Alternative machine models

advertisement
IN210 − lecture 13
Alternative machine models
Computational complexity thesis: All
reasonable computer models can simulate
one another in polynomial time (i.e. P is
“robust” or “machine independent”).
But the Turing machine is based on a
classical physics model of the universe,
whereas current physical theory asserts that
the universe is quantum physical!
Question: Can we build more powerful
computing devices based on quantum
physics?
(Another interesting kind of computing
device is the biological computer . . . )
Autumn 1999
1 of 9
IN210 − lecture 13
Quantum Computers
or outsmarting complexity
• According to quantum physics a particle
(elctron, proton, etc) can be in several
different quantum states at the same time.
• A quantum computer can follow several
different path in the computation tree at
the same time, and therefore somehow act
as a NTM.
• Several quantum machine models have
been proposed, e.g. a quantum Turing
machine.
• In 1994 Peter W. Shor showed a
polynomial time quantum algorithm for
FACTORING and D ISCRETE LOG, two
problems that seem to be difficult on a
classical TM, and whose intractability
modern cryptography relies upon.
Autumn 1999
2 of 9
IN210 − lecture 13
• E. Bernstein and U. Vazirani have recently
showed that a certain problem — the
recursive Fourier sampling problem — can
be solved in polynomial time on a
quantum Turing machine, but requires
superpolynomial time on a classical TM
unless P=N P.
• This was the first evidence ever
contradicting the Computational
Complexity Thesis!
• It has recently been proven that the class
N Pcannot be solved on a quantum Turing
machine in time o(2n/2) unless P=N P.
• To this date (1998) the “largest” quantum
computer actually build has 2 bits, but
there is much research going on.
• Many excellent articles on quantum
computing and complexity can be found
in SIAM Journal on Computing Vol. 26, No.
5, pp. 1409-1557.
Autumn 1999
3 of 9
IN210 − lecture 13
Cryptography
or cultivating complexity
• Security & legal issues limit the use of
computers.
• A foundation stone: Public Key
Cryptosystem.
Public key (function)
Encoding
Secret key (function)
Decoding
e
Dino
d
Dino
x = D(d, y)
y = E(e, x)
• D(d, E(e, x)) = E(e, D(d, x)) = x
• The system depends upon the existence of
one-way functions — functions that are
easy to compute, but difficult to invert.
Autumn 1999
4 of 9
IN210 − lecture 13
Example
The RSA (Rivest, Shamir, Adleman)
cryptosystem (1978)
encoding: y = xe mod pq,
primes
decoding: x = y d mod pq
p and q large
Note: The scheme can be broken (and x
computed from (y, pq, e) if pq can be factored
(i.e. if p and q can be computed from their
product).
Autumn 1999
5 of 9
IN210 − lecture 13
Cryptographic protocols
Example: Secret letters with digital
signatures.
• Two persons Alice and Bob with their
public (eA, eB ) and secret (dA, dB ) keys.
• Alice computes the letter consisting of
message x (in plain text) and signature
D(dA, x) (using her secret key), and
encodes the whole thing using Bob’s public
key.
• Bob decodes the letter using his secret key
(the message x is then readable to him)
and then computes (encodes) the
signature E (eA, D(dA, x)) using Alice’s
public key.
• If the result is equal to x, he knows that
Alice is the sender.
Autumn 1999
6 of 9
IN210 − lecture 13
• PKCs are based on one-way functions
which are easy to compute, but difficult to
invert.
• RSA uses essentially PRIMALITY as the
easy function and FACTORING as the
supposedly difficult function.
• PRIMALITY can be shown to belong to
N P ∩ Co-N P.
• It is also proven that PRIMALITY belongs
to ZPP, meaning that it can be solved by a
Las Vegas algorithm.
• There exists no polynomial-time algorithm
for FACTORING on a classical TM, but
FACTORING can be solved efficiently on a
quantum TM.
Note: If P=N P then any public key
cryptosystem can be broken.
Co
NP
NP
P RIMALITY
P
Autumn 1999
7 of 9
IN210 − lecture 13
Expressive/computational
power of machines & languages
or expressing complexity
Sample results
• Modeling (Mc Culloh, Pitts, ca. 1950): Neural
networks are Turing equivalent.
yk P
n
Neuron k
1
tk
...
x1
x2
x3
xi ≥ t?
xn
• Logic (Expressive power of first-order logic):
First-order graph properties are in P.
— First-order logic: ∀x∃y(¬x ∧ F ∨ y) ⇒ T
problems
FLs
Autumn 1999
algorithms
TMs
properties,
theories
logic
8 of 9
IN210 − lecture 13
• PL design (Expressive power of programming
languages):
— Simula is Turing equivalent (applicative PL)
— Prolog? (declarative PL)
• Query language design (Expressive power of
database query languages):
— Datalog queries are polynomial-time
computabel
• Grammars, compiler design, etc.
• Relationship between logic & complexity,
(query) language design
Fagin (1976):
NP =
graph
existential second-order logic
(∃R φ(G, R))
P =
graph
first-order + while + successor
= first-order + fixpoint + successor
= Horn existential second-order + succ.
Autumn 1999
9 of 9
Download