Thursday, May 01, 2014

Favorite Theorems: Equilibrium

The past decade has seen an explosion of work tying together theoretical computer science and micro-economics. Much has come in the area of market design, where tools and ideas from the algorithms community apply nicely in developing auctions that achieve some close to idea outcome.

In complexity, the most exciting work studied the problem of finding equilibriums of games. How does one find a Nash Equilibrium when each player's payoffs are given by a matrix. In a 2-player zero-sum game (my gain is your loss), one can easily find equilibriums using linear programming. But if we have unrelated payoffs, computing the equilibrium can be much more difficult.
Daskalakis et al. showed that computing the Nash Equilibrium between three players in PPAD-complete and Chen and Deng extended their work to 2-player games. PPAD represents a search problem, solvable if P = NP though not believed to be NP-hard. 

You don't have to know the formal definition of PPAD to appreciate this work. PPAD corresponds to a discrete version of the Brouwer fixed-point theorem, the critical tool in proving that Nash Equilibriums exist. One proof of the fixed-point theorem uses Sperner's Lemma, also PPAD-complete. The New York Times has a nice example of using Sperner's Lemma to fairly divide up the rent among three friends who share an apartment with different sized rooms.

Paul Goldberg wrote a nice survey on these and related results, such as finding equilibria in markets. 

Sunday, April 27, 2014

The Big bang Theory hits close to home

On a recent episode of  The Big Bang Theory Sheldon gives up String theory because, after working on it for 20 years, he has nothing to show for his efforts. I have been asked `is anyone working on P vs NP or have they given up because after 20 years of effort they have nothing to show for their efforts.'' Aside from GCT I don't know if anyone is ``working on it'' though it depends on what ``working on it'' means.

During the episode there were some random things about science that were said. If it was math I may have a sense if it was nonsense or not. Here I am not quite sure, so I list some and see what you think, or what you know, or what you think you know.

  1. A physicist named Barry says that he's not a String Theorist- he's a String Pragmatist. Is there such a thing as a String Pragmatist? 
  2. Sheldon referred to his attempt to compactify extra dimensions. Do string theorists do that?
  3. Penny said that giving up a field is like breaking off a relationship. What do you think of that? When I stopped doing computability and started doing combinatorics it was not a clean break. I gradually stopped looking at logic journals and started looking at combinatorics journals. But there are awkward moments- like when I study  Computable Combinatorics.
  4. Does the magazine Cosmopolitan really have an article on how to deal with a breakup in, to quote Sheldon, literally every single issue.
  5.  Is Geology:Science like the Kardashians:real celebrities? Actually, since the notion of a celebrity is just to be well known, I suppose the Kard's ARE real celebrities. But the real questions is- do Physicists look down on Geology?
  6. Is Standard Model Physics less advanced than string theory?
  7. Is Calculation of nuclear matrix elements a fad?
  8. Are string theory books so large that a bully would use one to hit someone over the head with? (There is a really heavy book on gravity which is better and more appropriate.)
  9. Has string theory made any progress towards proving that it's correct in the last 20 years?
  10. Will the TV-RESET rule make it such that Sheldon is back doing string Theory soon? This is also called the Dirty-Harry rule: no matter how many times Dirty Harry is kicked off the force, he's back by the next movie. Sometimes by the next scene.

Thursday, April 24, 2014

Libraries Without Books

Georgia Tech in its library renovation will move the vast majority of its books into a combined Emory/Tech Library Service Center off-campus. Very few people use the stacks anymore, particularly at this institute dominated by engineering and computer science.

As a young assistant professor at the University of Chicago in the 90's, I averaged about one trip a day to the joint Math/CS library to track down research papers or old books to find various mathematical definitions and theorems. These days I can access all these papers online and get access to mathematical definitions through Wikipedia and other sites.

I miss seeing the papers near the papers I'm looking for. I remember running across a paper grappling with the union of two complexity classes, which inspired this blog post. In order to prove a theorem about context-free languages, we relied on a characterization buried in a 1966 textbook on the topic. The Chicago library had three copies of that book, so I suppose someone once taught from it, a whole course on Context-Free Languages in the 60's.

I last time tracked down books in the library (at Northwestern) to research the history of P v NP for my book, which will itself likely soon follow the others into these "service centers". I can't remember the last time I went to the library to track down information for research purposes.

There's much to miss about looking up research materials in a library. But I also miss my electric typewriter, my almanac and my World Book encyclopedia collection. Can't stop progress.

Monday, April 21, 2014

Changing the ORDER you teach things in might help A LOT

I am teaching the undergrad jr/sr course Elementary Theory of Computation
which is Reg Langs, Context free Langs, Computability theory, P and NP.

Over the last few years I've changed some of the content (I dumped CFLs-- don't worry, they cover them some in the Prog Langs course) but more to my point today changed the ORDER I do things in

Change  1: Do P and NP first and Computability later. While this is not historically accurate (which may be why the order was what it was)
this is better pedagogically. Why?  Consider the following reductions:

1) Given a FORMULA phi produce a graph G and a number k such that
phi is in SAT iff (G,k) is in CLIQ

2) Given a MACHINE M_e produce a MACHINE M_i such that

M_e(e) halts iff M_j halts on at least 10 numbers.

Students have always found the second more confusing since the input and the output are both machines (and the reduction itself is done by a machine)
where as the first one seems like a REAL transformation- you input a FORMULA
and get out a GRAPH and a NUMBER.

There are two other reasons to do P NP first:
(1) Sometimes the last topic in a course gets short changed, and P NP is
more important than Computability, so better if Computability gets short changed.
(2) Lets say I could do P NP in either April or May. If I do it in April and someone resolves it in May, the students can get excited about it since they know about it. If I do it in May and its resolved in April then the students
cannot share in the joy of the discovery. This reason may become more relevant in the year 2214.

Change 2: I used to do the Cook-Levin Theorem (SAT is NP-complete) and
then do a reduction like SAT \le CLIQ. This semester I did SAT \le CLIQ first
and Cook-Levin later. Why? Because SAT\le CLIQ is better pedagogically (note- pedagogically is today's word on my word-of-the-day calendar) since the Cook-Levin reduction is harder and deals with Turing Machines as opposed to more familiar objects like Formulas and Graphs.

More generally- the order you teach things in may matter, and changing it is relatively easy.

Friday, April 18, 2014

Announcements

Time for a short rundown of announcements.

  • STOC will be held May 31-June 3 in New York City. Early registration and hotel deadline is April 30. Student travel support requests due by this Monday.
  • The newly renamed ACM Conference on Economics and Computation (EC '14) will be held in Palo Alto June 8-12. Early registration deadline is May 15. Hotel deadline is May 19th but the organizers suggest booking early because Stanford graduation is June 13.
  • The Conference on Computational Complexity will be held June 11-13 in Vancouver. Local arrangements information will be posted when available.
  • The ACM Transactions on Algorithms is searching for a new Editor-in-Chief. Nominations due May 16.
  • Several of the ACM Awards have been announced. Robert Blumofe and Charles Leiserson will receive the Paris Kanellakis Theory and Practice Award for their "contributions to robust parallel and distributed computing."
  • Belated congratulations to new Sloan Fellows Nina Balcan, Nayantara Bhatnagar, Sharon Goldberg, Sasha Sherstov, David Steurer and Paul Valiant.

Thursday, April 17, 2014

Should you reveal a P = NP algorithm?

A reader asks
What would you do if you could prove that P=NP with a time-complexity of n2 or better... moreover, would you publish it?  
There are all these statements of the good that could come of it. But how would the government react in its present state? Would it ever see the light of day? How would a person be treated if they just gave it away on the internet? Could a person be labeled a threat to national security for giving it away?
 I consider this a completely hypothetical and unlikely scenario. If you think this applies to you, make sure you truly have a working algorithm. Code it up and mint yourself some bitcoins, but not enough to notice. If you can't use your algorithm to mint a bitcoin, you don't have a working algorithm.

The next step is up to you. I believe that the positives of P v NP, like their use in curing diseases for example, greatly outweigh the negatives. I would first warn the Internet companies (like was done for heartbleed) so they can modify their systems. Then I would just publish the algorithm. Once the genie is out of the bottle everyone can use it and the government wouldn't be able to hide it.

If you can find an algorithm so can others so you should just take the credit or someone else will discover it. I don't see how one can get into trouble for revealing an algorithm you created. But you shouldn't take legal advice from this blog.

Once again though no one will take you seriously unless you really have a working algorithm. If you just tell Google you have an algorithm for NP-complete problem they will just ignore you. If you hand them their private keys then they will listen.

Sunday, April 13, 2014

Factorization in coNP- in other domains?

I had on an exam in my grad complexity course to show that the following set is in coNP

FACT = { (n,m) : there is a factor y of n with 2 \le y \le m }

The answer I was looking for was to write FACTbar (the complement) as

FACTbar = { (n,m) | (\exists p_1,...,p_L) where L \le log n
for all i \le L we have m < p_i \le n and p_i is prime (the p_i are not necc distinct)
n =p_1 p_2 ... p_L
}
INTUITION: Find the unique factorization and note that the none of the primes are < m
To prove this work you seem to need to use the Unique Factorization theorem and you need
that PRIMES is in NP (the fact that its in P does not help).

A student who I will call Jesse (since that is his name) didn't think to complement the set  so instead he wrote the following CORRECT answer

FACT = { (n,m) | n is NOT PRIME and forall p_1,p_2,...,p_L  where 2\le L\le log n
for all i \le L,  m< p_i \le n-1 , (p_i prime but not necc distinct).
n \ne p_1 p_2 ... p_L
}
(I doubt this proof that FACT is in coNP is new.)
INTUITION: show that all possible ways to multiply together numbers larger than m do not yield n,
hence n must have a factor \le m.

Here is what strikes me- Jesse's proof does not seem to use Unique Factorization.  Hence it can be used in other domains(?). Even those that do not have Unique Factorization (e.g. Z[\sqrt{-5}]. Let D= Z[\alpha_1,...,\alpha_k] where the alpha_i are algebraic. If n\in D then let N(n) be the absolute value of the sum of the coefficients (we might want to use the product of n with all of its conjugates instead, but lets not for now).

FACT = { (n,m) : n\in D, m\in NATURALS, there is a factor y in D of n with 2 \le N(y) \le m}

Is this in NP? Not obvious (to me) --- how many such y's are there.

Is this the set we care about? That is, if we knew this set is in P would factoring be in P? Not obv (to me).

I suspect FACT is in NP, though perhaps with a diff definition of N( ). What about FACTbar?
I think Jesse's approach works there, though might need  diff bound then log L.

I am (CLEARLY) not an expert here and I suspect a lot of this is known, so my real point is
that a students diff answer then you had in mind can be inspiring. And in fact I am inspired to
read Factorization: Unique and Otherwise by Weintraub which is one of many books I've been
meaning to read for a while.

Wednesday, April 09, 2014

Favorite Theorems: Extended Formulations

The first couple of favorite theorems took place at the beginning of the last decade, but recent years have brought exciting results as well, such as the limitations of using linear programs to solve hard problems.
It all started with a paper by E.R. "Ted" Swart (the Deolalikar of the 80's) that claimed to show P = NP by giving a polynomial-time algorithm for Traveling Salesman based on linear programming. Yannakakis put the nail in that technique by showing that no symmetric linear program formulation can solve the traveling salesman problem. The TSP problem expressed as a linear program has many facets (multi-dimensional faces) but one could possibly have a higher dimensional polytope with a smaller number of facets that could project down to the TSP polytope. Yannakakis showed that these higher dimensional symmetric polytopes must still have many facets by showing an equivalence between the smallest number of facets and the monotone dimension of a slack matrix of the polytope describing the TSP.

Not much happened since the 80's until Fiorini et al. generalized the Yannakakis result to give exponential lower bounds on the number of facets of general non-symmetric extensions of the polytope for traveling salesman. They combine Yannakakis' techniques with some communication lower bounds due to Alexander Razborov. Their approach was inspired by quantum computing ideas but in the end they had a more conventional proof.

Last fall RothvoĂź showed even stronger exponential lower bounds for the matching polytope through a "substantial modification" of Razborov's work. Since matching is in P, RothvoĂź showed that there are polynomial-time computable problems that can be formulated, but not succinctly formulated, as linear programs.

There has also been recent work showing lower bounds approximating clique via linear programs.

Ankur Moitra gave an excellent talk at the recent Dagstuhl giving an overview of these results and the techniques involved. The next step: Show lower bounds for semidefinite programs.

Monday, April 07, 2014

How free is Randomness?

Matthew Green had a great post on the topic how do you know a random number generator is working.  Gee, I just look at the sequence and see if it LOOKS random. Probably not the best idea. Actually people often found pattersn where there aren't any.


Reminds me of a the following apocryphal story which would have to have taken place before everyone had a computer: A teacher assigns the class a HW assignment to flip a coin 600 times and record H's and T's. He warns them that if they just try to come up with a random sequence without flipping he will know. Sure enough, a few of them had sequences with NO runs of 6 or more H's or T's. He knows they are faked. One of the students fessed up that yes, he just wrote down H's and T's in a way that looked random. But another student claims that he DID flip the coins, but when he saw a sequence of 6 H's in a row he changed it since he THOUGHT the teacher would spot it and THINK it wasn't random.

Is randomness a free resource? Papers in Complexity Theory strive to find good RNG's while papers in Crypto claim they already exist. Who is right?

Faulty RNG's are surely a problem for crypto protocols. But are they a problem for randomized algorithms? People really do use randomized algorithms to test primes. What other algorithms do people in the real world routinely use randomness for? (Not counting crypto protocols).Is it ever a problem?

I believe there are stories where a faulty RNG led to a crypto system being broken.

Are there stories where a faulty RNG led to a randomized algorithm being wrong?

Friday, April 04, 2014

How I learn a result

There is a theorem I want to learn. How do I go about it? (How do YOU go about it?) I give an example here which also leads to  pointers to some mathematics of interest.

A division of a cake between n people is PROPORTIONAL (henceforth prop.)
if everyone thinks they got (IN THEIR OWN MEASURE- AND PEOPLE CAN DIFFER WILDLY) at least 1/n. A division of a cake is ENVY FREE if everyone thinks they got the biggest (or tied) piece.

There are two kinds of protocols- Discrete and Moving Knife. I discuss Discrete here.

I had read several books on fair division (see here for a review) and had some interest in the topic. In particular (1) I knew the (fairly easy) discrete 3-person Envy Free protocol, but did not know (2) the rather complicated discrete 4-person Envy Free Protocol. And I wanted to learn it! How to do I do that (this isn't quite advice on how YOU should do it, but I am curious what you think of what I do AND what you do.)

  1. Find a good source for it. I used the original article from the American Math Monthly. It is NOT always the case that the original source is the best (I discussed this in another blog post.)
  2. Create a REASON to learn it with a deadline. I both agreed to teach it in seminar AND I volunteered to do an HONORS COURSE (interdisciplinary) on Fair Division (nickname: Cake Cutting). The first time I taught the course I didn't get to the theorem (getting my feet wet in both HONORS courses and the material was a limiting factor) but I have in subsequent years.
  3. While reading make HANDWRITTEN notes for the lecture I am going to give. I try  to understand everything that I  write down before  going on, but sometimes, I have to go forward and then backward. I find myself redoing parts of the notes many times. The notes  have many examples, pictures (which is why I don't type them initially), and counterexamples to check that the premises are needed. I check EVERY detail. What I present will  be less detailed.
  4. Type in the notes. (mine for 4-envyfree are here ) For me, somehow, being forced to type it  in I find corrections or better ways of saying or doing things. Also this produces notes for students or others. This MIGHT over time lead to survey articles or even textbooks but I DO NOT think in those terms. The notes that are produced are VERY GOOD FOR THE STUDENTS IN THE CLASS, or THE PEOPLE IN SEMINAR but NOT all that good for anyone else. (This may be why some textbooks are crap--- it is hard to turn class-specific notes into something anyone can use.)
  5. TOSS OUT the handwritten notes. Knowing you will do this makes the typewritten version better. Also its hard to keep track of where one puts handwritten notes. I used to keep a math notebook but its hard to find anything in it.
  6. In subsequent years when I teach the material I take my typewritten notes and make handwritten notes out of them. This force me to refresh on the material and I teach better if I can glance at notes that use large letters and symbols. If I do the course often enough I no longer need to. When I taught the Fair Division course in Fall 2013 I could do this proof off the top of my head.
There are some variants, Pros, and Cons of the above system:

  1.  If the material is easy I may go straight to type and skip handwritten. This was the case for protocols for proportional  cake cutting.
  2. I sometimes translate my notes, NOT to typed notes but to slides. There are some theorems whose ONLY writeup are my slides. I may or may not ever get them into notes  (that's a tautology).  I'll mention two but note that, even more than notes, slides are not really a good read unless you are taking the class. They are (1)  An adaption of Mileti's proof of the infinite Canonical Ramsey Theory to the finite case- it gives pretty good bounds, though not the best known. Very good for teaching, so I may submit to Journal of  Pedagogical Ramsey Theory.  I am sure these slides contain a correct proof since I ran them by Mileti himself., who was surprised and delighted  that someone got around to finitizing his proofs. The slides are here and here.(2) Using linear programming on some cake cutting problems. I doubt this is new, though I could not find it in the literature. I just did it for my class. Slides are here.
  3. If my GOAL is stuff for my class I may end up giving up. For example, I sort-of want to read the LOWER BOUND of Omega(nlogn) on number-of-cuts for n people, on prop. cake cutting due to Jeff Edmonds and Kirk Pruhs (this is Jeff Edmonds paper page). But the proof looks just a bit too hard for my students (recall- they are NOT math people, they are BRIGHT students from across majors). Knowing that I won't get to teach it to them I didn't quite have the motivation to look at it. I probably will someday--- for seminar.
  4. If its not just one paper but an entire area of knowledge I try to find all the papers in the area and make a website out of them. This is easier in a limited area. My Erdos Distance Problem Website has only 10 papers on it (its prob missing a few), where as my Applications of Ramsey Theory to TCS websiteApps  has 63 papers on it (I am sure its missing many). 
  5. One can get carried away with GATHERING papers as opposed to READING them.
What if you want to read a result, you begin, and its rather hard and/or you need a lot more background? There are several competing schools of thought:

  1. If at first you don't succeed, Try Try Again (credited to  William  Edward   Hickson).
  2. If at first you don't succeed, give up, Then Try Try again. Then quit. There's no point in being a damn fool about it  (credited to W.C. Fields)
  3. If at first you don't succeed then destroy all evidence that you tried.
  4. If at first you don't succeed, skydiving is not for you.
The question of when to hold 'em, when to fold 'em, when to walk away, and when to run permeates life and mathematics as well as gambling.


      Tuesday, April 01, 2014

      I am Bill Gasarch

      I have a confession to make. Remember back in 2007 when I retired from the blog for about a year. I didn't actually retire at all but instead took the blog in a new direction by writing under the pseudonym William Ian “Bill” Gasarch, to be more playful and irreverent. All I had to do was be a little off the wall, add a FEW CAPITAL LETTERS and some mispellings and voila, same blog, new blogger. I’m especially proud of the fake conversations “Bill” had with his “relatives”. 

      Now that I have come out, I’d like to thank Samir Khuller to help me set up a website off  Maryland’s CS page. The pictures of Bill are a friend of mine, a web programming consultant. Most of the rest of the links were plagiarized from the far corners of the Internet except for the God Play--wrote that one myself. 

      In 2008, I decided to return to the blog as myself and also continue as Bill. Great fun switching context between the two personalities. I particularly enjoyed doing the typecasts with the two personalities talking to each other.

      I have to admit Dick has done me one better, with his teenage-chess-genius-turned-complexity-theorist alter ego Ken Regan.

      I’m surprised how few people had caught on, after all how many of you have actually met Bill in person? But now that I have a respectable job, I realized it just wasn't right for me to keep fooling the community.

      Thursday, March 27, 2014

      Should We Have a TCS Ethics Board?

      We sometimes hear of the (rare) scientist who fakes data or results of experiments. In theoretical computer science one cannot fake a theorem, particularly an important result that will attract close scrutiny before publication in a conference or journal. But that doesn't mean we don't have academic improprieties from outright plagiarism to heated arguments over who should receive credit for a result.

      If these issues involve submissions to a particular conference, journal or grant they generally get resolved through the program committee chair, editor-in-chief or program officer. But often these problems go beyond a particular venue.

      What if we had a TCS Ethics Board composed of a few of the most trusted members of our community? For example, if two people argue whether or not they proved the same result independently, the board could first try to come to a mutually acceptable resolution and if that fails, make an independent assessment that could be used by PC chairs and EiCs.

      For more egregious cases of intentional plagiarism and/or theft of ideas, the board could write a stern letter that would go the perpetrator's supervisor and possibly recommend banning that person from publishing in various TCS journal and conferences for a specified period of time.

      The vast majority of TCS researchers are quite honest and to a fault share credit for their ideas, but every now and then some researchers, probably not even realizing they are acting unethically, create an atmosphere of distrust with their actions. An ethics board would show that we care about proper academic behavior and giving a confidential forum where people can address their grievances and hopefully resolve issues before, as had happened, driving people out of our field.  

      Sunday, March 23, 2014

      The answer is either 0,1, or on the board


      I have heard (and later told people) that the in a math course if you don't know the answer you should guess either 0 or 1 or something on the board. This works quite often.

      I have heard that in a course on history of theater you should guess either
      the theater burned down  or prostitution.  For example, the first musical
      was The Black Crook and it happened because of a fire (see the pointer).

      In upper level cell biology the guess is If only we could solve the membrane problem.

      In a math talk you can always ask is the converse true? or Didn't Gauss prove that?

      In computer science when someone asks me about a problem I say  Its probably NP-complete.

      In Christian Bible Study a good answer is either Salvation or Jesus. These are referred to as Sunday school answers.

      If you know what the usual things to say in other fields is, please comment.

      Thursday, March 20, 2014

      Spring Breaking at Dagstuhl


      It's spring break at Georgia Tech and time to head to Germany for the Dagstuhl Seminar Computational Complexity of Discrete Problems. Lots of discussion on algebraic circuits, interactive coding, information complexity, pseudorandomness and much more.

      This is a break for me, the ability to focus on complexity and research instead of hiring and administration. But even here, in rural Germany, one cannot completely escape the Internet and life back home.

      Back in the states I'm hearing of the difficulty for theory students to find postdoc positions. Here I'm hearing of the difficulty of well-funded theory faculty in Europe finding postdocs. Not so bad to spend time on this side of the pond. Some of the positions are listed in the comments of the fall jobs post. 

      Want to organize your own Dagstuhl workshop? Proposals due by April 15. The Dagstuhl staff do an excellent job with most of the organizing, basically you just need to choose participants and talks.

      The Dagstuhl library puts out the books authored by conference attendees and ask that authors sign those books. As this is the first Dagstuhl since The Golden Ticket appeared, I carried on the tradition.



      Tuesday, March 18, 2014

      Leslie Lamport wins Turing Award!

      Leslie Lamport wins Turing Award!
      See here for more details.

      Leslie did work on reliability of systems and security that
      (according to the article) is ACTUALLY BEING USED. So Real People
      use his stuff.

      He also developed LaTeX (building on TeX) which we all know and most
      of us use. Academics use LaTeX but I honestly don't know how wide spread
      it is outside of academia. However, this could be the first time that a Turing award winner did something that I used DIRECTLY (I am sure I use RSA and other things indirectly).

      How well known is The Turing Award? its called `the nobel prize of computer science' but I think its far less well known than the Nobel Prize.

      The Fields Medal and he Mill Prize got a big publicity boost when Perelman turned them down. But that only got them 15 minutes of fame, including a Stephen Colbert segment `whose not honoring me now'. So I will not be urging Leslie Lamport to turn  down his Turing Award in order to give it more fame.

      CONGRATULATIONS!

      Thursday, March 13, 2014

      Cosmos from Generation to Generation

      During high school, well before the world-wide web with its bloggers and YouTube, out came a series Cosmos that I watched religiously. Back then you had to watch a show when it was aired and no skipping of commercials, though Cosmos was a PBS (public-broadcasting) show so it didn't have any. Cosmos was hosted by the late great Carl Sagan. While I don't remember the contents of the show so much, I do remember being quite inspired by it and the show surely played a role in my future life as a scientist.

      I went to Cornell as an undergrad just a year after Cosmos' broadcast. Carl Sagan was a legend on campus, though I saw him just once, in a debate over Ronald Reagan's Star Wars plan. Sagan did have an amazing house looking out over the Ithaca gorge that you could see from the suspension bridge I crossed every day.

      Now my younger daughter is in high school and Neil deGrasse Tyson takes on the difficult task of updating Cosmos for this new generation. Molly and I watched the first episode last night. (I'm still blown away we can watch when we want and skip the commercials.) It really brought back memories of the original show and I was really touched when Tyson talked about meeting Sagan as a high school student.

      Tyson is giving a talk at Georgia Tech next month. Tickets went on sale yesterday and sold out within hours. Incredible to see the return of the scientific superstar.

      Monday, March 10, 2014

      Why do we think P NE NP? (inspired by Scott's post)

      Recently  Scott Posted an excellent essay on reasons to think that P NE NP.  This inspired me to post on the same topic. Inspired is probably the right word. Some of my post is  copied and some of my post   are my thoughts. A good test: if its intelligent and well thought out then its probably from Scott.

      Why do scientists believe any particular theory?  I state three reasons, though there are likely more:
      (1) By doing Popperian experiments- experiments that really can fail. Their failure to fail helps to confirm the theory. This is common in Physics, though gets harder when the particles get smaller and string-like. (2) Great Explanatory power. Evolution is the main example here--- it's hard to do real experiments but one can look at the data that is already out there and find a theory that explains it all. (3) (Kuhn-light) It fits into the paradigm that scientists already have. This comes dangerously close to group think; however, if most of the people who have looked at problem X think Y, that should carry some weight.

      Can we do Popperian experiments for P vs NP? For that matter can we do Popperian experiments in Mathematics? Goldbach's conjecture and the Riemann Hypothesis seem to have good empirical evidence. Though that kind of reasoning gets me nervous because of the following true story: Let li(x) = int_0^x dt/ln t.
      Let pi(x) be the number of primes \le x. It is known that li(x) and pi(x) are VERY CLOSE. Empirical evidence suggested that li(x)  \le  pi(x) and this was conjectured. Skewes proved that there was an x  for which li(x) \ge  pi(x). His bound on x, the the Skewes' number ,was quite large, at one time the largest number to appear in a math paper (that record now belongs to  Graham's Number). Then Littlewood, Skewes's advisor, showed that the sign of li(x)-pi(x) changes infinitely often. So the empirical evidence was not indicative.

      There might also be empirical tests you can do for continuous math, especially if its related to physics so you can do physics experiments.

      Have there been Popperian experiments to try to verify P NE NP? I am not quite sure what that means, but I do not think there have been (if I'm wrong please comment politely).

      So we move on to Great Explanatory Power. Are there many different empirical facts out there for which P NE NP would explain them and give a unifying reason? Does a bear... Well, never mind, the answer is YES! I give one  examples (from Scott's post) and two more. But note that there are MANY MANY MORE.

      1. Set Cover problem: Given S_1,....S_m \subseteq {1,...,n} find the size of the smallest subset of S_1,...,S_m that covers the union of S_1,...,S_m. Chvatal showed in 1979 that one can find, i poly time, a subset of S_1,...,S_m that is (ln n)+OPT. Okay, great, an approximation. EMPIRICAL FACT: people seemed unable to improve on this at all. In 2013 Dana Moshkovitz proved  that, assuming P\ne NP, this bound CANNOT be broken. Note that the algorithm of Chvatal and the lower bound of Moshkovitz have nothing to do with each other.
      2. Vertex cover: given a graph find the smallest set of vertices so that every edge has   one of them as an endpoint. There is an algorthm that gives 2OPT. There is one that does ever so slightly better: (2-(1/sqrt(log V))OPT.  In 2005 Dinur and Safra proved that, assuming P NE NP, there is no 1.36*OPT approximation. This does not match exactly but it still explains the lack of progress somewhat (more on this later when I discuss UQC).
      3. Max 3-SAT: given a 3-CNF formula find an assignment that maximizes the number of clauses satisfied.  Karloff and Zwick proved that there is an algorithm that finds an assignment satisfying (7/8)*OPT. Hastad proved that, assuming P NE NP, (7/8)*OPT is the best you can do.
      A bit more prosaic: P NE NP explains why people have had a hard time solving THOUSANDS OF PROBLEMS. I am most impressed with HAM CYCLE since mathematicians had been working on that one for quite some time--- trying to get a similar char to that of EULER circuit.

      So in summary, I find that P NE NP has GREAT explanatory power. That makes it a very compelling conjecture. Let us apply this test to other conjectures.

      1. Sigma_2 \ne Pi_2. Does this assumption explain anything? Our inability to find a circuit for SAT. I dont know what else it implies. Same for Sigma_i vs Pi_i. This might qualify as mini-kuhnian: Sigma_2\ne Pi_2 fits into how we view the world.
      2. P=BPP.  Almost every problem in BPP ended up falling into P over time. P=BPP would explain this. Also Nisan-Wigderson and its extensions make P=BPP fit into our world view.
      3. Unique Game Conjecture. This explains many upper and lower bounds that match, though nowhere near that of P NE NP. One of them is the constant 2 for VC. Even so, I find that compelling. (One of Scott's commenters said that all of the lower bounds from UGC are actually unified some how, so its not quite as compelling.)
      4. Factoring not in P. No real explanatory power here except that we seem to have a hard time finding an algorithm for Factoring. 
      5. Graph Isom not in P. Similar to Factoring not in P.
      So, what are our reasons to think Sigma_2 \ne Pi_2?

      Lastly, mini-Kuhnian. What do people in the field think? The polls on P vs NP that I conducted in 2002  and 2012 (see here)  indicate that believe that P NE NP is growing- roughly 60% in 2002, roughly 80% in 2012. Some of the commentators on Scott's blog took that 20% of P=NP people to be relevant.
      And indeed some of the P=NP people are both serious theorists and also not Dick Lipton (who seems to be who  Lubos Motl points to) as a serious theorist who thinks P=NP).(ADDED LATER- SOME COMMENTERS HAVE INFORMED ME THAT LIPTON IS JUST OPEN TO THE POSS THAT P=NP. ) But some of those people emailed me that this was a protest vote, protesting the fields certainty that P=NP. I also note that three of them compared it to their voting or Ralph Nader in 2000, only with less drastic consequences.

      I personally don't take `what people think' that seriously, but because of my polls we actually know what people think, so I put it out there.


      Thursday, March 06, 2014

      Favorite Theorems: Unique Games

      Michel Goemans and David Williamson made a splash in the 90's using semidefinite programming to give a new approximation algorithm for the max-cut problem, a ratio of 2θ/(π(1-cos(θ)) minimized over θ between 0 and π, approximately 0.87856. Hard to believe that this ratio is tight, but it is assuming the unique games conjecture.
      The first paper showed that the Goemans-Williamson bound was tight assuming the unique games conjecture and a "majority is stablest conjecture", the last says very roughly that the most robust election scheme is a simple majority. The second paper, which followed soon thereafter, proved an invariance property that implies, among other things, that indeed majority is stablest.

      Khot and Oded Regev show that under the unique games conjecture that essentially the best algorithm for approximating vertex cover is to take all the vertices involved in a maximal matching.

      Prasad Raghavendra gives a simple semidefinite programming approximation algorithm for any constraint satisfaction problem which is optimal under the UGC.

      Sanjeev Arora, Boaz Barak and David Steurer describe an algorithm that given a unique game where 1-δ fraction of the edges can be satisfied, you can in time 2npoly(δ) find a coloring that satisfies a constant fraction of edges. This may or may not give evidence against the UGC.

      Luca Trevisan has a nice recent survey on the unique games conjecture, covering much of the above and more, including beautiful connections between unique games and semidefinite programming.

      Tuesday, March 04, 2014

      Why are there so few intemediary problems in Complexity? In Computability?


      There are thousands of natural PC problems. Assuming P NE NP how many natural problems are there that are
      in NP-P but are NOT NPC? Some candidates are Factoring, Discrete Log, Graph Isom, some in group theory, and any natural sparse set. See
      here for some more.

      A student asked me WHY there are so few natural intermediary problems. I don't know but here are some
      options:

      1. Bill you moron, there are MANY such problems. You didn't mention THESE problems (Followed by a list of problems
        that few people have heard of but seem to be intermediary.)
      2. This is a question of Philosophy and hence not interesting.
      3. This is a question of Philosophy and hence very interesting.
      4. That's just the way it goes.
      5. By Murphy's law there will be many problems that we can't solve quickly.

      At least in complexity theory there are SOME candidates for intermediary sets.
      In computability theory, where we know Sigma_1 \ne \Sigma_0, there are no
      candidates for natural problems that are c.e., not decidable, but not complete. There have been some attempts to show that there can't be any
      such sets, but its hard to define ``natural'' rigorously. (There ARE sets that are c.e., not dec, not complete, but they are
      constructed for the sole purpose of being there. My darling would call them `dumb ass' sets,
      a terminology that my class now uses as well.)

      A long time ago an AI student was working on classifying various problems in planning. There was one that was c.e. and not decidable
      and he was unable to show it was complete. He asked me to help him prove it was not complete. I told him, without looking at it,
      that it was COMPLETE!!!!!!!!! My confidence inspired him to prove it was complete.

      So, aside from the answers above, is there a MATH reason why there are so few
      intermediary problems in Complexity, and NONE in computability theory?
      Is there some other kind of reason?

      Thursday, February 27, 2014

      Why Become a Professor

      Someone took me to task because in November I posted that the CRA News had 50 pages of job ads but didn't note that very few of those ads specifically were searching for CS theory faculty. Yes, it is true that theory is not as high on the search agenda as big data and other applied areas, but many of these schools will hire theorists after they fail to find qualified applicants in the other areas. My advice is to apply widely and it's not too late to do so, as many CS departments are just starting their interview process.

      Why is it so hard for universities to hire in applied CS? Because you are not just competing against other universities, you are competing against industrial labs. Besides the usual arguments of typically hire base salary and no required teaching or grants, a place like Facebook or Google can give you access to data that you just can't get a university and your research will have a real-world impact faster than basic academic research.

      So why be a professor? Money isn't as big an issue as you expect, professors can consult, own significant portions of their IP (depending on the school) and can start companies. Teaching is time-consuming but extremely rewarding. To me there are two aspects that make being a professor the best job in the world.

      • Freedom to set your own research agenda: Very few labs these days give you the freedom to choose your own research topics and even fewer will reward you for that. In academics we expect you to develop your own research areas and succeed in them. 
      • Working with students: The relationship between advisor and advisee is not unlike a parent and child. And there's no better feeling than watching them succeed. You can often get summer interns and postdocs in industry but it just isn't the same.

      Sunday, February 23, 2014

      When is a paper public? When is anything public?

      A while back I had a paper in an intermediary stage. The version posted to my Ramsey Theory Course Website was not final. Is the paper public? I didn't think about it much but I didn't intend it to be since it was not done yet. But Adam Sheffer's Google Scholar (more on that later) didn't know that. So his Google Scholar program found the paper and he blogged about it here.

      This was FINE- my co-author David Conlon posted a comment on the blog that a revised version was coming, and I asked Adam to modify the blog to say so as well. Plus, I am DELIGHTED and SURPRISED when someone noticed my work.
      When the final version came out Adam DID report about it here.
      But it raises the question- when is a paper public? Some related thoughts
      1. (Kudos to Adam for pointing me to this one). I had heard the ABC conjecture might be solved. What I didn't quite know is that the author posted the papers on HIS OWN website, not on arXiv. Did he intend for it to go public? I do not know- but it is NOW public. If its not correct he can always say well, I didn't tell you it was ready for
        prime time yet
        .
      2. A while back a student pointed me to a website with a paper that claimed to show GI is in P. The author DID NOT post it to arXiv (this may have been before there was an arXiv) nor did he email GI experts across the planet to look at it. So is it public? Is it my job to debunk it? It would be a bit odd to tell someone who didn't ask my opinion that YOUR PROOF IS WRONG! The student was hoping it was TRUE so he wouldn't have to learn the proof that if GI is NPC then PH collapses. I ended up telling the student that its surely wrong else since if GI was in P then I would known it--- not a really rigorous proof, but it sufficed. See here for more on this non-rigorous proof technique.
      3. I have read stories of people who post personal things on FaceBook (a common one is that they are gay) and then are shocked, shocked, when their parents find out.
      4. There's a nice song about a related issue: My Mom's on Facebook.
      5. On the TV show West Wing there was a segment where someone thought a story was just regional and hence would not affect her confirmation hearing. She had to be told NO- there is no such thing as a story that is just regional. Journalists and others can FIND STUFF if it is out there.
      6. Similarly to the last item: I can't post a paper just for my class because Google Scholar will find it (I DO NOT EVER require a password for a course website, I don't want to hassle the students and I am happy if somone else wants to see what I am teaching. Note also that this blog is NOT complaining that Adam found my paper). I (cordially) emailed Adam Sheffer inquiring how Google Scholar found me. For my fellow Luddites I reprint his answer (hmmm, I don't know if he meant his email to be public.)
        Regarding how Google Scholar works: The system constantly scans the web for new papers. It knows the papers which I have coauthored (it finds them while searching the web and asks me to verify that they are indeed mine). Then, in future scans, if it stumbles upon a paper that might be relevant to me - it sends me and update about it. I am not sure what exactly are the criteria that it uses, but it seems to be papers by my coauthors and papers on similar topics (perhaps papers that have common references with my papers?).
        Sound like when TIVO tried to guess what shows you liked- it could be right but it could be far off. I know of liberals who watched FOX news a lot to gain insight into what people they disagree with thought, and then their TIVO thought were Tea Partiers. Then TIVO thought they liked Tea.
      7. I gave Adam kindly blogger-to-blogger advice: DO NOT let this be a cautionary tale. Do not ask permission to post about a PAPER --- just do it. I've done it here when blogging about Galois games and here when blogging about how much trig should a governor know. If you post on something a bit more personal (e.g., here) then maybe you should get permission (one of the people gave permission, the other never responded).

      So what to make of all this? We are in a time of transition and some people
      may end up revealing more than they intended. The next generation may learn;
      however, we seem to always be in a time of transition.
      "p.html" 31L, 4785C written

      Wednesday, February 19, 2014

      Analog Adventures

      I was 11 forty years ago when Dungeons and Dragons first appeared and by high school many of my friends spent far too many hours embarking on those fantasy adventures. I didn't play much myself only joining a few campaigns for a short period of time. Nevertheless the game hit its mark, giving escapism to our inner nerdoms.

      I just finished a new book on D&D Of Dice and Men by David Ewalt. Ewalt tells three interlocking stories: The history of D&D, Ewalt's personal journey into the game, and some campaigns he's embarked on from the characters' point of view.  Gary Gygax and Dave Arneson originally created the game but Dave soon left the company and was written out of the books. Gary mismanaged the company which has bounced around from various owners every since. I hadn't really kept up with D&D after college and I'm surprised that it has so many incompatible versions (reminds me of LaTeX and Python). A fifth version of D&D to unite them all is due for release this summer.

      My daughter's school just put on a production of She Kills Monsters, a play about a woman who discovers her late sister through the sister's D&D adventures. My daughter played an evil cheerleader and her line "We're way too powerful for you" reminded us both of her classic role as NP.

      These days we have immersive rich interactive games on our Play Stations and smart phones but still there is still nothing like gathering around a table transformed into a tavern as we meet our fellow adventurers and embark on the next quest.

      Monday, February 17, 2014

      Maryland looking for a Lecturer/Who teachers your intro courses?

      My chairman, Samir Khuller, asked me to post our job posting for a lecturer to my blog, so I and doing it right now. I think he overestimates the power of this blog.

      At Univ of MD at College Park lecturers teach most sections of our intro sequence (CS1, CS2, CS3, Discrete Math). They might sometimes do a higher level course if the need arises. They are there to mostly teach and advise students, not do research, though some do and that's certainly fine. Some have PhD's and some don't.  Note that this is a full time job--- these are not adjuncts or rent-a-profs. They are part of the department.

      Is having lecturers teach the intro courses  a good idea? Overall YES; however, I would like to have professors teaching those courses once in a while, or be involved once in a while, as they may have a good idea to share with the lecturer (then again, they might  not).  Having said that, you don't see me volunteering for CS1, CS2, or CS3 (My policy: I never teach a course where I would get a B if I took it. One exception- I did once teach Graduate Algorithms and got in a bit over my head.) I do teach Discrete Math once in a while. I also like to proofread the midterm and final of whoever is teaching it. I'm NOT that good a proofreader, but I like to know what they are up to and it gives me an excuse to talk to them about the course and make sure it doesn't drift to much. I would like to think I have a good rapport with the lecturers.

      Does having a PhD in CS and being a professor give one some insights on what should be in CS1,2,3 and how to teach it? I honestly don't know. My first semester at Univ of MD (1985) we were teaching program verification in CS1. I knew immediately it was a bad idea and eventually (without any input from me) the dept stopped doing that. This is a case where being a researcher may be a negative with regard to education.

      I would like to think that my working in theory helps me teach Discrete Math.  It does as a source of some problems (e.g, if a paper says `by an easy induction...' that can be a problem set) but one should not get to carried away and go over their heads.


      Wednesday, February 12, 2014

      IEEE and the Conference on Computational Complexity

      Dieter van Melkebeek, current conference chair of the IEEE Conference on Computational Complexity has set up a forum to discuss the future affiliation of the conference. Read over the manifesto and update. You can give general comments on the about post. Dieter discusses three options:

      1. Remain with IEEE
      2. Have a joint ACM/IEEE conference in some fashion.
      3. Become an unaffiliated conference.
      For most of you this shouldn't matter at all. Most of you readers have never attended the complexity conference (though you ought to give it a try sometime) and those that do would probably continue attending no matter who sponsors the meeting.

      There has been a go-it-yourself tendency in this field so as not to pay any organization fees and to publish papers in an open-access format. Just realize this approach has some potential downfalls.
      • Without a sponsor, the conference and in particular the organizing committee, is fully responsible for any deficit. One bad hotel contract can sink a conference. To guard against this, you'll need to budget a surplus far larger than IEEE or ACM would require. Also IEEE and ACM can use their influence to get better deals such as on hotels. 
      • You'll need considerably more volunteer time from faculty to handle the larger administrative load. This time doesn't show up in the financial calculation but it is a real expense.
      • Having a sponsoring organization gives a set of checks and balances to guarantee that the conference retains a consistent mission and be fiscally responsible. If a conference is solo and the organizing committee drops the ball, the conference just disappears. 
      I'm not recommendation here, just trying to point out some pitfalls that usually don't get discussed. I'll stay out of the actual debate on the future sponsorship of CCC and leave that to the younger generation.

      Sunday, February 09, 2014

      Superbowl underdogs and overdogs

      (Stephen Colbert tells me that NFL guards their copyright of the name of the game they played on Sunday, which is why stores say they have a `big game sale on beer'. I will get around this the same way he does. I hope he doesn't sue.)

      In Superb owl XLVIII (48) (one of the few uses of Roman Numerals left) Denver was the favorite but got beaten. This is not so unusual and they were not a favorite by much-just 2.5 points. But they lost 43-8. That sounds unusual--- for the favorite to get completely whomped (spellcheck thinks that's not a word, but spellcheck doesn't even think spellcheck is a word).

      So- how uncommon is it for the favorite to get whomped? We would need a rigorous definition of whomped. I'll say two touchdowns, or 14 points. A list of all of the superb owl games and what the spread was and what happened is here. I summarize:

      1. The underdog WON 15 times. The most surprising was probably when the NY Jets were an 18-point underdog to the Baltimore Colts  in Supeb owl III in 1969 and won 16-7. Good thing they won since Joe Namath (the NY Jets QB) guaranteed  victory.
      2. In 2010, Superb owl 44,  Indianapolis was a 5 points favorite over the New Orleans Saints but the Saints whomped  31-17.
      3. In 2003, Superb owl 37,  Tampa Bay was a 4 point underdog to Oakland. Tampa Bay whomped by winning 48-21.'
      4. In 1988, Supeb owl 22, Washington was a 3 point underdog to Denver, but Washington whomped 42-10.
      5. In 1984, Superb owl 18, LA was a 3-point underdog to Washington, but LA whomped 38-9.
      6. In 1981, Superb owl 15, Oakland was a 3 point underdog to Philadelphia, but Oakland Whomped 27-10.
      7. In 1970, Superb owl 4, Kansas City was a 12 point underdog to Minnesoda, but whomped 23-7.  The reason they were an underdog is that people still though the AFC to be the lesser league and didn't remember that in Superb Owl 3 the AFC won (though didn't whomp).
      So the underdog has whomped 5 times. That is FAR MORE than I would have thought. Does this show that underdogs are undervalued? Not sure since if an underdog wins it doesn't matter by how much for the betting, where as if a favorite wins it matters by how much for the point spread.

      This may also call into question if point-spread is the best way to express `this teams is that much better than that team'. One issue (though it was NOT an issue in Superb owl 48) is that if a team is behind
      then they may use a high-risk high-reward strategy which, if it fails, they lose my a lot. The phrase one may hear is ``the game was closer than the score''.  Note that for baseball they don't do point spreads, they do odds instead. Should Football follow that? What are the PROS and CONS of points spread vs odds?

      The cliche is `I watch the game for the commercials' I actually skip the game and watch the `best of superb owl commercials' that come the week before the game.

      Thursday, February 06, 2014

      Favorite Theorems: Connecting in Log Space

      We start the favorite theorems with a result that might surprise many is still less than ten years old.


      Intuitively, this result says you can tell if two points are connected in a complex maze by only having to remember the equivalent of a constant number of locations in the maze. Reingold's algorithm builds an expander graph based on the zig-zag construction in a very clever way that uses very little space to construct and to check that two points connect.

      In 1979, Aleliunas, Karp, Lipton, Lovász and Rackoff showed that one can solve s-t connectivity in randomized logarithmic space by taking a random walk on the graph. My last favorite theorem from 2004 talked about derandomizing space algorithms and before Reingold the best algorithm for s-t connectivity required log4/3 space. Indepently of Reingold, Vladimir Trifonov gave a O(log n log log n) space algorithm for s-t connectivity, a victim of bad timing.

      One neat implication of Reingold's result is a new and simpler characterization of log-space as the set of problems expressible in first-order logic with ordering and symmetric transitive closure.

      After Reingold's result we might have expected solutions to a number of related problems but we didn't see much progress.
      • Can every randomized log-space algorithm be derandomized in log space?
      • Do there exist log-space computable universal traversal sequences? 
      • Can we solve directed s-t connectivity better than Savitch? 
      • Can we modify Reingold's algorithm to bring log space into NC1?

      Monday, February 03, 2014

      Contribute to the Martin Gardner Centennial

      Dana Richards emailed us about a place to write how Martin Gardner influenced you. You can leave such comments here.  I left a comment there, but I expand it for this blog entry.

      When I got interested in mathematics in high school I went to the public library looking for math books (this was before Al Gore invented the internet). I found some books by Martin Gardner and began reading them. They were just right for the level of math I was on at the time. My very first proof that I read on my own (outside of a class) was in those books- the proof that (in the terminology I use now) a graph is Eulerian iff every vertex has even degree.

      I  learned about SOMA cubes (I bought a set and did every puzzle in the book in about 2 days.This is the only evidence that as a kid I was good at math). I learned the unexpected hanging paradox which confused me then (and still does). I learned the hercules-hydra game and other games that go on for a LOOOOOOOOOONG time. They are related to things in logic. I also learned about NIM games which I have used as a starting point for several student projects.

      There have been some conferences in his honors, the Gathering-for-Gardner. I had the pleasure of reviewing some of the books from it. (My review is here.) These articles show that while his work was recreational this is not a well defined term- some if relates to very important and deep mathematics, and some deep math has arisen from such problems. The books also have articles about Gardner the Magician.

      In  the 2000's some of his books were reprinted and I was asked to review them for my SIGACT News book review column.  I took this opp to do a joint review of several math recreational books. What a delight to reread his books and contrast them to those of his successors. And I STILL learned some math that I didn't know from them. (My review is here.)

      Shortly before a column appears I always email the authors-of-books, authors-of-reviews, and publishers a first draft of my column. His publisher told me that he didn't use email (he was in his 90's!) so I postal mailed him my review. He read it, corrected some typos, but otherwise was quite happy with the review. He died a few months later. I was happy to have some contact, albeit short, with the man who helped keep me interested in math in high school and beyond.

      Wednesday, January 29, 2014

      Snow Days

      An unexpected snowstorm hits the city in the middle of a workday. The roads get hopelessly clogged and I'm lucky to get home--many others just abandoned their cars, or slept in them. I'm talking about Valentine's Day, February 14, 1990 in Chicago. But the same story hit Atlanta yesterday. One big difference--Georgia Tech is closed today and tomorrow because the city can't handle the ice. The University of Chicago was open on February 15th. 

      When these events happen, people wonder about the planning. Was it wise for all schools and businesses to shut down about the same time, early yesterday afternoon? Lots of blame to go around (and having CNN based in Atlanta guarantees coverage) but it is not clear that any plan would have done much better--how do you get millions of people safely home with dangerous roads and a limited public transit system? One of these times you wish P = NP and you can just find the right algorithm. One of the issues is that freak mid-day snowstorms don't happen that often, the last major one in Atlanta was 1982.

      Meanwhile back in Chicago, schools were closed earlier this week, not for snow but for cold. But it was that cold on a regular basis back in the 90's. Global warming has changed expectations, as so brilliantly illustrated in this xkcd. 


      Monday, January 27, 2014

      Fermat's Last Theorem and Large Cardinals. Really!


      A brilliant math ugrad at UMCP, Doug, is also a creative writer who
      wants to work on large cardinals. His creative writing may help him there.
      We had the following conversation:

      DOUG: The proof of Fermat's last theorem depends on the existence
      of certain large cardinals and hence is not in ZFC.

      BILL: That is not true.
      DOUG: Have you read the proof?
      BILL: No, however, if that were true I would know it. See this blog entry.
      DOUG: Why would you know it?
      BILL: If FLT required LCs then

      a) Number theorists would be nervous.
      b) Logicians would be ecstatic
      c) The math community would not have announced to the world that FLT was solved.
      d) Wiles would not have collected his prize money for solving it.
      e) Again, I would know it.

      DOUG: All compelling arguments. Even so, FLT requires LCs.
      BILL: I will bet you five dollars that the current proof of FLT does not depend on LCs.
      DOUG: Uh. Your counter arguments are compelling.
      BILL: So... no bet?
      DOUG: Uh. No.

      The next day I got an email from Doug with the subject heading

              I cheated myself out of five dollars.

       Doug found this article, What does it take to prove Fermat's Last Theorem? Grothendieck and the logic of number theory by Colin McLarty, from 2009.The article says that YES the  current proof of FLT DOES depend on LCs. Note that the proof is quite long and uses lots of other stuff that is sort of buried in it. So--- whats the catch?Why aren't number theorists nervous and logicians ecstatic? According to the article anyone who reads the proof of FLT and wanted to could unwind it  and get it down to ZFC (and likely down to PA). But nobody has bothered yet.Hence nobody is nervous or ecstatic.

      I will take their word for it, but it does make ME nervous. NOT about FLT which I am sure enough people have looked at (and looked at the background literature) that it really can be made to work in ZFC.I am more worried about papers that are not quite so looked at as having LC assumptions that are hidden from the reader that cannot be easily removed.

      However KUDOS to Doug for telling me something in math that I did not know and should have.  I will treat him to a more-than-five-dollar-lunch.

      Postscript: AH, the article was right: FLT was proven using ordinary set theory last year. (See here) by Colin McLarty (I assume its the same person). I will still take Doug to lunch- in a stupid, pedantic, technical sense I was right- the current (2014) proof of FLT did not use LC. But for the real issue of there being any problem at all, I was clearly wrong. Only a logician would say I was right. Hmm- Doug is a logician. Its up to him. (Hmm- my spell checker allows `Hmm' but not `Hmmm')

      Thursday, January 23, 2014

      What will we wrought?

      When I went to college in the early 80's, students protested against college endowments invested in companies that had business in apartheid South Africa. My mother worked as a statistician for one of those companies. An interesting dilemma, do I support a policy that hurts the company that is indirectly helping to put me through college?

      Now my daughter is in college and worrying that the computing revolution will make it hard to find a job once she graduates and making her consider those job prospects in the major she chooses. And what am I? Chair of a computer science department that helps push that revolution forward.

      Computing gets quite a bit of blame these days for the widening income gap between the have and the have nots, and jobs taken over by automation, but without causing a corresponding need for other types of jobs, other than those that serve computation itself. Are those fears real? We can't answer that question yet, positively or negatively. Time will tell.

      For now, we just need to do our jobs, making computing better but also understanding and mitigating the negative effects of computing. We need to make sure that computing technology becomes a growing sea that raises all boats, and not just making the world better for the technological elite.

      While I stand in awe in how computer science has changed the world, I hope we don't ever end up with CS leaders getting together and saying "What have we wrought?"

      Monday, January 20, 2014

      We don't care about Ballroom Dancing. Should we?

      YOU got into your undergrad school because not only were you good at Math but you were on
      the Fencing Team and in the Latin Club (so you could taunt your opponents in Latin: ouyah allcay athay an alestrabay!). Also you had a letter from your principal who never had you for a class but can comment on your leadership since you organized a pep rally for the football team. Why does UNDERGRAD admissions care about these things? Because, while they want good students, they also want to build a community of scholars of different interests and abilities.

      YOU apply to grad school in Computer Science. Hey, it worked once maybe it will work again! You write about being in the ballroom dancing club and you have a letter from the Dean, who never had you in a class,
      but you worked in his office and he can attest that you are a good leader and a hard worker.

      Does the admissions committee care? NO. The only things we care about are CS, MATH, and RESEARCH. A letter from someone not in math or science is worthless. Some exceptions and thoughts:

      1. If you recorded ballroom dancing and made a project out of how to teach it using some interesting new technology this IS good. This is likely an Human-computer-interaction project; however, I would care about this no matter what field you are going into.
      2. If you have an interest in Nat Lang Proc and know Linguistics I would care.  I would think that knowing a foreign language would also be good.
      3. If you are going to go into Human computer Interaction then Psychology helps.
      4. If you are going to do Quantum Computing then Physics is good. However, whatever you do Physics is good as its more evidence of math ability.
      5. For ugrad its been said that if your parents are powerful OR donors you may have an easier time getting into some UGRAD schools. What about Grad school? I've honestly never seen a case of this so I honestly don't know. 

      I know a student who is an excellent math major but also a creative writer. I doubt this will help him.
      but should it?

      I once saw in a students application a letter from his preacher attesting to his fine moral character.
      Do we care? should we? How about the other way around- if someone was an EXCELLENT programmer and math person but served 8 years for armed robbery would we care? This might not be fair since perhaps he reformed.

      but my real question is- for grad admissions we don't care about Ballroom Dancing or other misc.
      Is this a mistake? If someone was NOT as good at math BUT a better writer, should we take them?

      Thursday, January 16, 2014

      Favorite Theorems: Introduction

      I was invited to give a talk at the FST&TCS conference held in December 1994 in Madras (now Chennai). As I searched for a topic, I realized I was just finishing up my first decade as a computational complexity theorist so I decided to recap the past decade by listing My favorite ten complexity theorems of the past decade (PDF). Not so much to choose winners, but use the theorems to survey the great research during those past ten years.

      In 2004, I repeated the exercise in my then young blog for the years 1995-2004. In 2005, I went back in time and chose my favorite theorems from the first decade of complexity (1965-1974) and in 2006 I covered 1975-1984, completing the backlog of the entire history of computational complexity.

      Now in 2014 we start again, recapping my favorite theorems from 2005-2014, one a month from February through November with a recap in December. These theorems are chosen by a committee of one, a reward only worth the paper they are not written on. I choose theorems not primarily for technical depth, but because they change the way we think about complexity. I purposely choose theorems with breadth in mind, using each theorem to talk about the progress of a certain area in complexity. I hope you'll be presently surprised by progress we've made in complexity over the past decade.

      Tuesday, January 14, 2014

      A short History of Crypto

      I taught a 3-week summer course to High School Students called

      Computer Science: A Hands Off Approach

      which did some theory. One thing I did was the following storyline:

      1. Shift Cipher
      2. Affine Cipher
      3. Gen perm cipher (any perm of a,b,c,...,z
      4. PROOF that perm is unbreakable: Eve has to go through all 26! possibilities
      5. PROOF that perm IS breakable: Freq analysis. Moral of the story: Any proof that a system is unbreakable makes some assumptions that Eve might not agree to. Hence proving security is tricky.
      6. Matrix Ciphers. PROOF that if you use a big enough matrix its unbreakable. Sort-of true for ciphertext only (though I doubt really proven). PROOF that requires going through all possibile nxn matrices that have det rel prime to 26 to crack it using plaintext only. PROOF that this is NOT true (I leave that to my reader).
      7. Vig Cipher. Proof that its unbreakble, Proof that you can break it
      I was very happy with this since it really instilled in them that proofs of security are nontrivial and always have assumptions. That does not mean they are not worth anything, but you want to get the assumptions explicit to if (or even WHEN) the system is broken, you can see what assumption needs to be attended to for the next iteration. One caution- these were VERY GOOD students so they GOT IT. They didn't mistake the false proofs for real ones.
      (NOTE-- I never teach the cows paradox - all cows are the same color- when
      doing induction since half the class will think induction can prove anything and the other half will think that all cows are the same color.)

      I then encapsulated all of this with what I call A SHORT HISTORY OF CRYPTO:

       For i=1 to infinity
                      Alice and Bob: We have a cipher that nobody can crack
                      Alice and Bob: We have PROVEN that it can't be cracked
                      Eve: I just cracked it
                      Alice and Bob: Whoops.


      (I later did Diffie-Hellman in the class which I will talk about in a later blog.)

      Thursday, January 09, 2014

      Is Traveling Salesman NP-Complete?

      [Nina Balcan asked me to mention that the COLT submission deadline is February 7]

      Jean Francois Puget writes a controversial post No, The TSP Isn't NP Complete which I discovered during a lengthy twitter discussion with Puget and Peter Cacioppi.

      There is a well-known technicality for the Euclidean Traveling Salesman problem but let's focus instead where we are given a complete graph weighted with positive integers. One version of TSP is truly NP-complete
      TSP Decision: Given an integer B, is there a cycle through all the vertices such that the total weight of the edges used is at most B?
      TSP Decision is in NP by guessing the cycle and hardness by a simple reduction from Hamiltonian Cycle.

      Puget's makes the point that we normally think of the TSP problem as an optimization question
      TSP Minimization: Find the cycle through all the vertices that minimizes the total weight used.
      TSP Minimization is not even a decision problem. In the 80's, Mark Krentel created a complexity class OptP to capture optimization problems and showed that TSP Minimization is Opt-P-complete.

      One can use TSP Decision to solve TSP minimization by doing binary search, so they have effectively have the same complexity.

      Puget points out that even if we are given a tour, checking that it is the shortest tour is not believed to be in NP. That problem is in co-NP and I'm guessing co-NP-complete. [Update 3/20: I was right]

      Puget doesn't like when people claim TSP is NP-complete when they are talking about the optimization problem. For example from my P v NP survey
      The NP-complete traveling salesperson problem asks for the smallest distance tour through a set of specified cities. 
      I'm far less bothered than Puget. Those who understand the technicalities of NP-completeness know that one has to convert the optimization problem to an appropriate decision problem to formally get an NP-complete set. Others aren't led too far astray, for we do have an equivalence that P = NP if and only if there is an efficient (polynomial-time) algorithm for TSP Minimization.

      Monday, January 06, 2014

      Tell me more about Alice and Bob

      A while back my parents were in town on a weekend when I was scheduled to give a talk to HS students who had done well on the Maryland math competition. Logistics dictated that my parents goto the talk. (They were both English majors and wouldn't like me using the word `goto' since its not a word. Fortunately they don't read this blog and see what else I do to the English Lang.)
      I gave a talk on Communication Complexity (slides are here) where I did the following:

      1. I stated the problem: Alice has x, Bob has y, both strings of length n. They want to know if x=y without too much communication.
      2. I noted that they can easily solve this with n+1 bits of communication and raised the question of Can They Do Better?
      3. We discussed this. Someone mentioned average case (informally), which helped me clarify the problem. Someone else suggested sending the number-of-1's and if it didn't match they weren't equal, but also noted that if they did--- weren't sure. Most thought that one COULD do better or else I wouldn't be talking about it.
      4. I tell them that NO you can't do better (I do not prove this).
      5. I told them about mod arithmetic and how in mod p, p a prime, poly of degree d have at most d roots.
      6. I presented the O(log n), error 1/n, randomized protocol for equality that uses polynomials mod p.
      7. I briefly talked about comm complexity in general.
      The talk went well. It is a good topic for good HS students, and if you want to borrow my slides you can (you may need to update the political reference). Having not understood ANY of the talk Mom had the following question:
      MOM: Alice and Bob-- are they married?
      BILL: Oh. I'll say no.
      MOM: If they are not married then how come they have such a hard time communicating?
      DAD: (he didn't say anything but I could tell he agreed).





      Thursday, January 02, 2014

      Two cheers for the Pardon of Turing. But not three.


      As I am sure readers of this blog know Alan Turing was prosecuted for homosexuality in 1952, forced into hormone treatment, and committed suicide in 1954 (I had always heard that that was WHY he committed suicide
      though the dates don't quite line up--- at that time he seemed to be recovered form the ordeal. So there are some legit questions about this.)

      He was recently given a Royal Pardon. While I am glad he was pardoned this does raise some questions. Lets me logical.

      1. If we believe the law criminalizing homosexual acts was unjust (as I am sure that all of my readers do) then Turing is a red herring- they should pardon ALL people convicted. AND note that  according to this there are 15,000 men who were convicted of this crime who are still alive.
      2. Pardon means that the person didn't do the crime. This is not the case here. However, laws are supposed to promote justice, not block it.
      Here is hoping that the Pardon of Turing will lead to a general pardon.

      (NOTE- the pointer in item 1 says more of what I wanted to say, but says it
      more elegantly than I ever could.)

      Monday, December 30, 2013

      2013 Complexity Year in Review

      The complexity result of the year goes to The Matching Polytope has Exponential Extension Complexity by Thomas Rothvoss. Last year's paper of the year showed that the Traveling Salesman Problem cannot have a subexponential-size linear program formulation. If one could show that every problem in P has a short polynomial-size LP formulation then we would have a separation of P and NP. Rothvoss' paper shoots down that approach by giving an exponential lower bound for the polynomial-time computable matching problem. This story is reminiscent of the exponential monotone circuit lower bounds first for clique then matching in the 1980's.

      If you expand to all of mathematics, one cannot ignore Yitang Zhang's work showing the liminf of the difference between consecutive primes is a constant. Dick and Ken have other great results for the year.

      A big year for theoretical computer science. Silvio Micali and Shafi Goldwasser received the ACM Turing Award. The P v NP problem makes a prominent appearance on a major US television series. We are seeing the rise of currencies based on complexity. Large-scale algorithms, cryptography and privacy play center stage in the Snowden revelations on the National Security Agency.

      Generally good news on the funding and jobs front in the US. After a year of sequestration and a government shutdown, looks like some stability for science funding now that congress has actually passed a budget. Plenty of theorists got academic jobs last spring and given the number of ads, this year's CS job market should be quite robust as well.

      A year for books. Of course my own Golden Ticket as well as Scott Aaronson's Democritus and Tom Cormen's Algorithms Unlocked.

      An odd year for the blog in 2013 without a single obituary post. Nevertheless let us remember 4-Colorer Kenneth Appel, Georgia Tech Software Engineering Professor Mary Jean Harrold and Wenqi Huang who led the Institute of Theoretical Computer Sciences at the Huazhong University of Science and Technology. In 2013 we also said goodbye to Alta Vista, Intrade, Google Reader and the CS GRE.

      In 2014 we'll have the next installment of My Favorite Ten Complexity Theorems of the Past Decade and the centenaries of George Dantzig and Martin Gardner. Enjoy New Years and keep reading.