Re: Ideas for course on great ideas in (theoretical) CS?
From: Tim Smith (reply_in_group_at_mouse-potato.com)
Date: 02/21/04
- Previous message: Daniel McLaury: "Re: Ideas for course on great ideas in (theoretical) CS?"
- In reply to: Chip Klostermeyer: "Ideas for course on great ideas in (theoretical) CS?"
- Next in thread: newstome_at_comcast.net: "Re: Ideas for course on great ideas in (theoretical) CS?"
- Reply: newstome_at_comcast.net: "Re: Ideas for course on great ideas in (theoretical) CS?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sat, 21 Feb 2004 11:32:26 GMT
In article <e6b6bda9.0402201648.65c1acb2@posting.google.com>, Chip Klostermeyer wrote:
> and may use that as a guide for some of the course. Examples
> of some things I might discuss (besides a couple weeks on
> basics/definitions/history) include Towers of Hanoi, Byzantine
> Generals, voting problems, maybe a gentle discussion
> of interactive proofs, prisoner's dilemma, game of life, primality
> testing, graph coloring ... anything that can be discussed in a
> day or so to folks with no CS background, yet which has some
> theory component to it ... stuff that is surprising or counter-intuitive
> is all the better ;)
> Anyway, if anyone has any suggestions for material/topics
> that I might cover, I would most appreciate it. Any pointers
Zero-knowledge non-interactive proofs could be good. There was an article
in "FOCUS" about 12 years or so ago that I recall that claimed the
following, if I recall correctly:
Given any theorem and a proof of that theorem, it is possible to
construct a graph with a Hamiltonian circuit, and where given the graph
and a Hamiltonian circuit, the proof can be reconstructed, and someone
who does not know the proof can verify that the graph has this property,
without gaining any information about the proof itself.
(Someone jump in here, please, and correct any mistakes in the above. I
defintely recall the parts below, but I'm fuzzy on the above. In
particular, is the graph constructed from the theorem and the proof, or can
the graph be constructed without knowing a proof of the theorem? I.e., for
every theorem, does there exist a graph that contains a Hamiltonian circuit
if and only if the theorem is true?)
One of the common examples given to show zero-knowledge proofs is the
problem of proving that you know a Hamiltonian circuit on a graph.
Combine those, and use a non-interactive proof, and you get the surprising
result that if you have a theorem and a proof of it, it is possible to
prove to others that you indeed have a correct proof, without giving them
any information about that proof!
Imagine how frustrating that would be if it were actually practical and
someone did that for an important problem, like one of the Millenium
problems. (I wonder...would they get the prize?)
> to references to articles (e.g., from Scientific American) that
> would be accessible to students would be great (I have a couple)
> would be great.
Take a look at "The New Turing Omnibus" by A. K. Dewdney. The book itself
is probably too lightweight for your needs, but it will give you many topic
ideas.
For something different, how about sorting stacks of pancakes? Suppose
you've got a stack of N pancakes, each a different size, and you'd like the
stack sorted with bigger ones on the bottom, smaller on top (e.g., like a
stack from the Towers of Hanoi). The only operation you have is to pick the
topmost k pancakes (1 <= k <= n), and reverse them. So, if your stack is
(from top to bottom) 1 5 3 2 4, and you flipped the top 4, you would have 2
3 5 1 4. All the usual questions can be asked about this: average number of
flips required, worst case, etc.
Besides being an interesting problem, there is an interesting bit of trivia
associated with it. It is the subject of the one and only scientific paper
by Bill Gates:
Gates, W. and Papadimitriou, C. "Bounds for Sorting by Prefix Reversal."
Discrete Math. 27, 47-57, 1979
This is why Bill Gates has an Erdos number (4).
-- --Tim Smith
- Previous message: Daniel McLaury: "Re: Ideas for course on great ideas in (theoretical) CS?"
- In reply to: Chip Klostermeyer: "Ideas for course on great ideas in (theoretical) CS?"
- Next in thread: newstome_at_comcast.net: "Re: Ideas for course on great ideas in (theoretical) CS?"
- Reply: newstome_at_comcast.net: "Re: Ideas for course on great ideas in (theoretical) CS?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|