Title: Quantum Fault Detection
1Quantum Fault Detection
- Jacob Biamonte, Marek Perkowski
- Wednesday, July 07, 2004
2Principles of Quantum Fault Detection
- 1. Classical fault detection and localization
2. Quantum fault detection and localization
3. Algorithm to create fault localization tree
3Goal Number One
- Illustrate classical known method to detect and
localize faults on simple AND gate - Explain classical fault model
- Explain the use of this in large scale circuit
design
4Classical Fault Localization
- Example AND gate inserting stuck at faults.
Good Circuit
- Seven possible situations
Stuck at 1 at a
Stuck at 1 at b
Stuck at 1 at y
Sa1
Sa1
Sa1
Stuck at 0 at a
Stuck at 0 at y
Stuck at 0 at b
Sa0
Sa0
Sa0
5Classical Fault Localization
- Create truth table showing good circuit and all
cases of faults
lt-- Indicates a faulty output (output different
than that of good circuit)
- A subset of these inputs that cause these faulty
outputs are chosen to create a fault tree
- Goal minimize the number of test vectors needed
to detect and localize all faults
6Classical Fault Localization
Input Vectors Chosen so as to detect and localize
all faults with minimum number of test vectors
b
sa0 y
sa0
sa0 a
sa1 y
sa1 b
sa1 a
Good Circuit
a
T1
0
X
0
T2
1
X
X
0
T3
0
X
X
1
T4
1
X
X
X
1
Fault Table of AND gate with stuck at faults
Before Test
Possible Good Circuit, sa1 a, sa1 b, sa1 y, sa0
a, sa0 b, sa0 y
Applying Test Vector 01
After Test
Possible sa1 a, sa1 y
Possible Good Circuit, sa1 b, sa0 a, sa0 b, sa0 y
Fault Table shown adjusted for each branch of the
tree
7b
sa0 y
sa0
sa0 a
sa1 y
sa1 b
sa1 a
Good Circuit
a
Original Fault Table
T1
0
X
0
T2
1
X
X
0
T3
0
X
X
1
Good Circuit, sa1 a, sa1 b, sa1 y, sa0 a, sa0 b,
sa0 y
T4
1
X
X
X
1
Good Circuit, sa1 b, sa0 a, sa0 b, sa0 y
sa1 a, sa1 y
Good Circuit, sa0 a, sa0 b, sa0 y
Because all of the stuck-at-0 faults have the
same entries in the fault table, there is no way
to localize them
If we would have tested exhaustively it would
have taken all 4 tests, we did it in 3, very
important for large designs
8Goal Number Two
- Explain the difference between choice of
classical fault model and Quantum Fault Model - Illustrate some of the gates that are used in
both the circuit and fault model - Explain some of the differences between classical
fault detection and quantum fault detection
9Possible single fault models, this is the part we
need your help with
Pauli-X
Stuck-at-1
10Some Frequently Used Quantum Gates I
Controlled-NOT
Swap
Controlled-Z
Z
11Frequently Used Quantum Gates II (continued)
V
Square-root-of-Not
Square-root-of-Not gate-Hermitian
V
Controlled-V gate
V
Controlled-V gate
V
12Two types of faults in quantum computing that
differ from classical computing
- 1) Always Present yet never detected?
- A quantum circuit may have a fault always present
that is never detectable when read - This can result from a phase shift
2) Always Present yet only detectable in a
percentage of measurements
- A quantum circuit may always have a fault present
that is only detectable in some percentage of
measurements
- The probability of detecting the fault is P where
0ltPlt1 - One way a fault like this could occur is if a bit
is in a superposition of states
13Quantum Fault Example
- Just like in the classical example, we will pick
two fault models but this time only insert them
in one location in the quantum circuit. - We are going to use the Pauli-Y and T-gate as our
fault model respectively. - As we did in the classical example we will
calculate the circuit values after the fault is
inserted and compare them with the correct values
14A detectable Quantum Fault
- Original circuits permutation matrix is
calculated
- Fault is inserted into circuit (Example Pauli
Y)
Fault Name Y_at_c
- Permutation matrix is then recalculated
15- The correct matrix and the faulty matrix are then
compared for fault Y_at_c (continued)
Input vector of 000 will detect the fault
Input vector of 001 will detect the fault
Input vector of 010 will not detect the fault
Input vector of 011 will not detect the fault
Input vector of 100 will not detect the fault
Input vector of 101 will not detect the fault
Input vector of 110 will detect the fault
Input vector of 111 will detect the fault
16We finished our calculations for the Y_at_c Fault
- Now that we have just calculated everything we
need for the Pauli-Y fault by observing the
differences between the correct circuit and the
faulty circuit. - We will place the T-gate into the circuit and
repeat the steps preformed for Pauli-Y - After we are done we will make a fault table as
with the AND gate in the classical example
17A Quantum Fault detectable in a percentage of
measurements (The fault of superposition)
- A new fault is placed in the same circuit as in
example one, this one will be named T_at_c
- Fault is inserted into circuit (Example p/8 also
known as a T-gate)
New Fault Same Circuit as last example, named
T_at_c
- resulting matrix is then recalculated
18- Complex values in the matrix are multiplied by
their complex conjugates to obtain the
probability of measuring the given output (T_at_c
example continued)
We multiplied the matrix obtained after we
inserted the fault by its complex conjugate to
obtain the probabilities of measuring a fault
where each detectable error occurs.
Resulting Matrix after we insert the T_at_c fault.
19- The correct Matrix is then compared for the T_at_c
fault
Input vector of 000 will not detect the fault
Input vector of 001 will not detect the fault
If Present Input vector of 010 will detect the
fault 14.6 of the time
If Present Input vector of 011 will detect the
fault 14.6 of the time
If Present Input vector of 100 will detect the
fault 14.6 of the time
If Present Input vector of 101 will detect the
fault 14.6 of the time
Input vector of 110 will not detect the fault
Input vector of 111 will not detect the fault
20Fault Table Creation
This is the fault for the T gate
Remember, this is the fault for the Pauli-Y gate
- The information that certain test vectors can
detect the fault in question is then put into
columns of a fault table
This example is just like the classical example
except now we have a Pauli-Y and T-Gate as our
fault model instead of stuck-at 0 and 1.
21- Using these tables, we can attempt to localize
the faults, (for this example, we assume only one
fault is present, single fault model)
These localizations assume no other faults exist
in the circuit.
22- These tests done just as in classical case
Quantum Faults tests require iterative testing
Y_at_c
T_at_c
We can only know with a certain probability if
T_at_c is present
Pauli-Y
T-Gate
?
The probabilities that the successive test will
fail/pass changes with each iteration, we can
never know for certain that no quantum fault is
present.
23Thank you very much