Supplementary Information of “An optical fiber network

advertisement
Supplementary Information of “An optical fiber
network oracle for NP-complete problems”
S1. Delay Assignment
S1.1 Proof for T j  t  (2 N  2 j 1 )
To provide an unambiguous oracle, the delay Tj assigned to nodes numbered by subscript j must be selected in a
way that equation
N
N
 C T  T
j
j 1
j
j 1
(S1)
j
is fulfilled only if Cj = 1 for all j = 1, 2,… N. Here Cj is a non-negative integer representing the number of visits
to node j and N is the number of nodes in the graph. In this case observing a pulse with delay equal to the sum of
all nodes’ delay is equivalent to the oracle declaration of existence of the Hamiltonian path.
Here we will show that the delay assignment Tj = ∆t∙(2N+2j-1) is universally suitable for the oracle as
Hamiltonian path can be distinguished from any other combinations of delay.
Substituting the Tj expression into Eq.(S1) yields
N
N
j 1
j 1
2 N  C j   C j 2 j 1  N 2 N  2 N  1
(S2)
 N
 N
2 N  1  2 N   C j  N    C j 2 j 1
 j 1
 j 1
(S3)
This equation can be re-written as
So we have
N
C
j 1
j
N
(S4)
Otherwise, the right hand side of Eq.(S3) will be greater than 2N. Then we suppose that certain Cj equal to zero.
Obviously C1 is greater than zero. For any Cj = 0 (j > 1), the lack of its corresponding term of 2j-1 must be
compensated by one or few 2p-1 (p < j) terms. This is because {1, 2, … 2N-1} can be treated as the base of binary
expression. The right hand side of Eq.(S1) and Eq.(S2) can be then treated as a known binary expression with all
1
the coefficients equal to 1 except for the term of 2N. Therefore the missing 2j-1 term requires at least an additional
2·2 j-1 term to compensate. Or compared with the case that Cj = 1 (j = 1~N), each Cj = 0 increases the total sum
of Cj by at least 1. That is, if there exists any Cj = 0 (j > 1), then
N
C
j 1
j
 N 1
(S5)
This conflicts with Eq.(S4), therefore Cj = 0 cannot exist. Since all Cj’s are non-negative integers, the only
possible values of them are Cj = 1 for all j = 1~N. An example of the above proof for a graph with 5 nodes is
shown in Fig.S1.
The total time delay is given by
N
T
j 1
j
 ( N  1)2 N  1 t  N 2 N t
(S6)
And the time complexity is O(N2N).
Figure S1 An example of the proof procedure for a graph with N = 5 nodes. For all Cj = 1, the sum of Cj is 5. If
there is one Cj = 0, in this example it is C4, the missing term 23 can only be compensated by increasing the
coefficients of smaller terms 22, 21 and 20. A few possible coefficient combinations are given in the figure such
as {3,1,1}, {2,3,1} and {0,7,1} for terms {2 2, 21, 20}. However, by observing these coefficient combinations,
compensation of term 23 at least requires a coefficient of 3 for term 2 2 and increases the sum of Cj by 1. This
conflicts with the limitation set by Eq.(S2). Therefore all Cj’s must be greater than zero and the only possible
values satisfying Eq.(S2) are Cj = 1 for all j = 1~N.
2
N
S1.2 Proof for T j  t    pk  / p j
 k 1 
In this delay assignment pj’s are different prime numbers and p1 < p2...< pN. With this delay assignment, all
terms in Eq.(S1) are divisible by prime number pj, except for the terms of Cj Tj in the left hand side and Tj in the
right hand side. This means (Cj - 1)Tj is divisible by pj. Since Tj is not divisible, (Cj - 1) is therefore divisible by pj,
so we can write that
C j  1 mj pj
(S7)
where mj is a non-negative integer. Substituting Eq.(S7) into Eq.(S1) yields
N
m
j 1
j
0
(S8)
Therefore mj = 0 and correspondingly, Cj = 1 for all j = 1 ~ N.
Prime number based delay assignment has a time complexity greater than O(N!) since
N
T
j 1
j
N
 N

 N

 t    pk  / p j  tN    pk  / pN  tN !
j 1  k 1

 k 1 
3
(S9)
S2. Experimental Implementation of the Fiber Network
S2.1. Fiber network design
Realization of the graph is based on optical fiber and fiber couplers, as shown in Figure 1 (b) in the main text.
For node 1, an optical pulse is injected into the starting port of the whole graph. Then the pulse is split into two
paths by a 50:50 fiber coupler. These two pulses with ~50% energy of the injected pulse will propagate to node
2 and node 5 via fiber links. For the pulses propagating back from node 4 to node 1, an 80:20 fiber coupler in
node 1 is used. 20% power of the pulses from node 4 is extracted in the ending port for detection and the rest 80%
power will be re-injected into the graph via the other input port of the 50:50 fiber coupler in node 1. For node 2,
3 and 5, the couplers used are all 50:50 fiber couplers with two inputs and two outputs. For node 2, only one
input port of the coupler is used. For node 3 and 5, one output port of the coupler is used to form the connection
to other nodes and the other output port is used as monitor port. All the nodes are connected by optical fibers.
All fibers are connected by fiber splicing to minimize loss and eliminate back reflection induced by the fiber
connector. There is no need of using optical isolator in this specific graph: the unidirectional property of all the
paths is guaranteed by the design of each node. The delay of each node is achieved by inserting certain length of
fiber in the node. The delay length of each node is calculated from the splicing point (shown as “X” in Figure 1
(b)) of the input fiber to the splicing point of the output fiber. For standard single mode fiber (SMF) at 1.55 µm,
the effective refractive index is ~1.465, therefore 1 meter of SMF generates a delay of ~4.9 ns. Note that due to
the length of input fiber at node 1 an additional common delay of ~7.5 ns is added to all output pulse delays;
however, being common, this delay is irrelevant to the experiment.
S2.2. Node design
A node design for a general graph with N nodes and arbitrary connections is shown in Fig.S2. All inputs from
other nodes are combined by an Nx1 combiner. Then the combined optical signals are delayed and amplified.
Finally, the optical signals are equally split by a 1xN splitter and output to other nodes. Any node can be the
starting node and/or the ending node for the Hamiltonian path detection since only N-1 inputs and N-1 outputs
are used.
4
Input from other nodes
or external
...
Nx1 combiner
Delay
Isolator
Amplifier
Isolator
1xN splitter
...
Output to other nodes or
external
Figure S2 Node design for a general graph with N nodes and arbitrary connections among different nodes. Input
signals are combined by an Nx1 combiner and then delayed by a certain length of fiber. Isolators guarantee the
unidirectional operation and amplifier compensates the loss. The signals are finally split by a 1xN splitter as
output to other nodes or external for monitoring purpose.
5
Download