Friday, April 01, 2016

The Machine Learning Turk

Google's AlphaGo took the world by storm when it won its match with Lee Sedol but Demis Hassabis now acknowledges the dark truth. Google wanted to promote its cloud computing division as Amazon AWS and Microsoft Azure have quite the head start. Google needed a killer app that would bring users to Google Cloud and decided they could win if they had the best machine learning tools. They bought Deepmind, run by Hassabis, and needed a showcase event and decided to focus on Go, a game yet to be conquered by computers. Hassabis and his team used clever machine learning techniques on top of Monte Carlo Tree Search but only made mild improvements to the game. Google was growing desperate so a plan was hatched.

Using a modern version of the mechanical turk, an 18th century chess playing automaton that secretly hid a human inside playing the game, Hassabis enlisted Japanese Go player Yuta Iyama to secretly choose the moves for AlphaGo. Iyama, who worked with Google when they agreed to remove Iyama's embarrassing Karaoke videos from YouTube, didn't have to physically be in the machine but relayed the moves by a method Hassabis wouldn't reveal. AlphaGo, secretly getting its moves from Iyama, easily dispatched the European champion in October.

Hannabis and his team wrote up their failed algorithms and found it shockingly easy to fool the Nature editors and reviewers. Yann LeCun of Facebook looked at the Google's team's Nature paper and didn't see that much different from what Facebook had tried. "I just figured Google had chosen better parameters to make their program successful. At the time I should have realized what Google was up to."

Google took a risk challenging Lee Sedol but Sedol, not realizing he was really facing Iyama, played the wrong style of game and lost the match four games to one.

Will this revelation hurt the future of AI? "Machine learning continues to change society, but when it comes to Go," said LeCun, "Alpha fools".

Monday, March 28, 2016

MohammadTaghi HajiAghayi on David Johnson

More than a week ago, I heard the very sad news that David Johnson has passed away after one year fight with cancer. I felt that I should write a memorial note for him. Indeed I have done the same for Mihai Pătraşcu in the same blog and both Mihai and David were very similar to me from several aspects: both were my colleagues at AT&T and more importantly my dear friends, both they got their Ph.D. from MIT (the same place that I got my Ph.D. as well), they both were extraordinary researchers, and both passed away due to cancer after almost a year-long fight with it (and I was closely aware of their situations in that year). Indeed David read my memo for Mihai and he told me that he liked it. In addition, there is another reason that I feel respect for David; he was just a bit older than my father who also passed away very recently. So here I would like to put my thoughts into words for David (and this took me more time in this case since I wanted to mention some new thoughts given the comments already in this blog). To do so, I would like to mention some of David’s personal characteristics that I appreciated a lot and give some examples on them from my interactions with him. Indeed I have even mentioned some of these to him when he was alive and told him because of these (and other reasons), I am always proud to mention that I have him as my boss at some point in my career.

First of all, David was very humble and modest especially given his extraordinary CV: he won several awards especially Knuth prize, he is the co-author of one of the top most-cited books in CS, he was fellows of almost every community that he was involved with (e.g., ACM, SIAM, AT&T), he was a member and the chair of several prestigious award committees (like Gödel, Knuth, ACM Kanellakis, ACM Thesis Award) and indeed he was a founder of some of them (e.g., Kanellakis), and he was the founder of SODA, the best algorithms conference, among others. Despite all this he was a very humble and modest man and I think lots of people who interacted with him will fully agree on this. Just to give an example, in 1998, while I was still a second-year undergrad at Sharif University, I sent him an email asking whether he was aware of any book similar to Garey & Johnson but for parallel computing (indeed this was my first remote interaction with him); I was shocked how fast he answered my email just in a couple of hours with a relevant reference. This was especially very exciting and encouraging for me, since several other people never answered my emails at that time. More interestingly, later in 2012, I told him personally that I admired him for answering that email. He told me just wait a second and in a couple of minutes, he could find the exact same email from 1998 that I sent him; then we even discussed some English improvements for the email text as well.

Second he was a perfectionist from several aspects. Here are some examples. He was often the reviewer for P=NP or P!=NP papers for several journals. Probably lots of us even do not look into these papers unless written by a well-known fellow; however he was reading these papers very carefully to find the exact bugs and mention them to the authors. Indeed even when I sent him several referee requests for conferences for which I severed as a PC member, he always spent a lot of time to read the paper very carefully and often came with novel improvements and simplifications, sometime in a extend that authors of the paper under review wanted to have this anonymous referee as a co-author. All these happened despite he was a very busy man; however he still considered the task of refereeing a paper very seriously and respected the authors (and I think this is an example that lots of us can learn from it). He was a very good writer as well and spent a lot of time to improve the presentation of a paper, simplify it, and present it in a perfect way. I am proud to have one paper coauthored with David, a very long paper with several co-authors. On this paper David had the lead and indeed spent all the years that I was with AT&T (and even after than) to prepare the journal version of the paper. Indeed he was sending us the almost final version on Dec 2014 (and asked us for comments) just a month before he was diagnosed with cancer (I hope that still we can send the paper to a journal given the time that David spent on it). Another example of his perfectionism: he attended ALL SODA while he was alive and almost ALL STOC and FOCS (expect 1-2 years that AT&T had travel restrictions). Not only that, anytime that there was any talk in the conference, he attended at least one session. Yet another example: we had group lunches every day at AT&T.  That was David’s habit to ask everyone in the group to see whether they want to join. Now the interesting point was that he came exactly at noon EVERY DAY and you could even set your watch for 12pm when you saw him for lunch.

He was founder of SODA, the best algorithms conference. Indeed lots of us know David because he was the founder of SODA and he was handling SODA business meetings for lots of year as the chair of the steering committee. As a result, I often had lots of discussion with him regarding SODA and its future. We discussed what the protocol for selecting the chair of SODA should be, whether SODA should have an official Rebuttal Phase or not, etc. During discussion even some interesting topics came up which are good to discuss in the community as well. David believed since SODAs (and in general other major TCS conferences) are the main venues for publications but still we need full and correct mathematical proofs for our claims (despite the rest of CS), we should have a five-year period that any major claims and theorems for which the authors do not provide full proofs in a verifiable manner in arxiv or in a journal during these five years should be considered officially open for everyone to grab, prove formally, and get the full credit for that. Another discussion was that ideally SODA (and again other major TCS conferences) should go double-blind like lots of other major CS conferences in other fields. This will help to have much more fair selection in which the name of authors do not give advantage/disadvantage for acceptance (though PC chair still could see the author lists for some extreme cases).

I can probably write pages and pages of other memories on David’s excellent personal characteristics (e.g. he was a marathon runner, he held the annual barbecue for AT&T/Bell-labs theory interns, researchers, and alumni for more than two decades,  he served in Army between his Masters and Ph.D. and kept the same types of spirits and disciplines in the rest of his life, he always emphasized on putting his middle initial “S.” in his name especially due to Airport Security since his name is a very common name, etc), but I think I should stop at this point.

I hope that we have a great memorial event for him in the next SODA (SODA’17) the conference that he founded.

Rest in Peace David,


From Mohammad

Thursday, March 24, 2016

Complexity versus Complexity

For those interested, I've started writing posts for the Predictwise Blog. Predictwise makes predictions of future events such as who will win the Republican Nomination (currently Trump with an 80% probability) based on prediction markets and other betting sites. This has been a fascinating election in terms of predictions, strategies, rules and game theory and I'm happy to try and makes sense out of it over at Predictwise without subjecting my readers here at Computational Complexity with too many political posts.

A reader had asked me to comment on a Slate article The Theory of Everything and Then Some, a book review of John Miller's A Crude Look at the Whole: The Science of Complex Systems in Business, Life, and Society. John Miller is a social scientist who works on the other "complexity theory" that studies that "simple local rules can have complex global implications". Often complex systems work quite well, like the invisible hand of the economy, but sometimes things can go wrong and the article often mentions the "flash crash" of trading programs reacting to each other causing a major drop in stock prices in May of 2010.

Our fields with the similar names are not as different as might appear. Much of what they study are inherently computational-like processes and we also look at emergent behavior from simple operations of Turing machine; read, write and move the tape. What they call non-linear we call computation. We do take very different approaches. The computational complexity theory community proves theorems where we can and helps understand the mathematical challenges of when we can't. The other complexity theorists try to explain by examples, simulations and simplified models.

The two communities often, but not always, seem to have disdain for one another and that's a shame. The tools of computational complexity can help understand the power and limitations of complex systems. These collaborations require them to understand how we can help them and for us to be willing to work on problems that may not yield difficult-to-prove theorems. That's what attracts me to prediction markets, a very simple kind of information aggregation system that still is very difficult to analyze as a computational mechanism.

What's missing from the article is how tools like machine learning can play in helping to predict the outcomes of many complex systems. The big deluge of data that starts off the article may add to the complexity but it almost paradoxically also makes it possible to learn from it.

Sunday, March 20, 2016

Hilary Putnam passed away on March 13


Hilary Putnam passed away on March 13, 2016. Some of the obits say he  was a philosopher, mathematician, logician, and computer scientist.

He is probably best known to readers of this blog for his work on Hilbert's 10 problem and resolution.

HILBERT  TENTH:

Recall H10 stated in current terminology: Find an ALGORITHM that will, given a poly p(x1,,...,,xn) in many variables, with coefficients in the integers, determine if it has a diophantine solution.

Martin Davis, Hilary  Putnam, and Julia Robinson showed that if you also allow exponentation then the problem is  undecidable in the early 1960s. Yuri Matijasevich in 1970 showed how to express exps in terms of polynomials to complete the proof. The solution to Hilbert's 10th problem is often credited to all four of them which seems right to me.

One consequence of there proof: for any c.e. set A there is a poly p such that

A = { x | exists x1,...,xn p(x,x1,...,xn)=0}

Later work got the polynomial down to 13 variables.



RESOLUTION:

John Robinson (but see comments)  and later papers by  Davis-Putnam aad later Davis-Logemann-Loveland devised resolution theorem proven which is an early SAT-solver algorithm. Many modern algorithms are based on it. (Note- earlier version of this post had mistakes in it. I thank Paul Beame's comments below for clarifying the history.)

HOW TO CLASSIFY HIM:

 I suspect that Hilary Putnam would call himself a philosopher since that was his MOTIVATION.  That may be the best way to classify people (if we are inclined to do that), don't look at WHAT they do look at WHY they do it.

PHIL OF MATH- one problem with Philosophy, even Phil of Math, is that its hard to have well defined questions and therefore hard to answer them. I am NOT criticizing the field, just saying why I would have a hard time working in it.




Thursday, March 17, 2016

The Value of Shapley

Nobel laureate Lloyd Shapley passed away Saturday. We best know Shapley for his stable matching algorithm with David Gale. Nicole Immorlica guest posted on stable matching shortly after Gale's passing in 2008.

I'd like to talk about another great innovation, the Shapley Value, a solution concept for cooperative games. For example, suppose no candidate has a majority of candidates heading into the Republican convention and there is no winner on the first ballot. Now we have many delegates that might group themselves into coalitions, and a union of coalitions that have enough delegates can determine the nominee. Larger coalitions have more power than smaller ones but even a single delegate coalition could tip the election. The Shapley value gives weights to the coalitions that measures their relative power with some nice linear and symmetric properties. In this scenario, the Shapley value of a coalition is the probability that adding that coalition will tip the election when coalitions are added in a random order.

Game Theorist Robert Aumann, another Nobel laureate, used the Shapley value to predict winning coalitions in Israeli elections.

The main challenge of the Shapley value is computational, in general it is #P-complete to compute but it can be approximated efficiently.

Monday, March 14, 2016

On Phillip Rogaway's The Moral Character of Cryptographic Work.

Some people have emailed me asking me to blog about the paper The Moral Character of Cryptographic Work by Phillip Rogaway  I urge you to read it, even if you disagree with it. Especially if you disagree with it. (Hmm- how will you know if you don't read it!)

There are so many issues raised in this paper that it could be (and might be) the topic of many blog posts. The first three paragraphs are today's topic:

Preamble. Most academic cryptographers seem to think that our field is a fun, deep, and politically neutral game—a set of puzzles involving communicating parties and notional adversaries. This vision of who we are animates a field whose work is intellectually impressive and rapidly produced, but also quite inbred and divorced from real-world concerns. Is this what cryptography should be like? Is it how we should expend the bulk of our intellectual capital? 

For me, these questions came to a head with the Snowden disclosures of 2013. If cryptography’s most basic aim is to enable secure communications, how could it not be a colossal failure of our field when ordinary people lack even a modicum of communication privacy when interacting electronically? Yet I soon realized that most cryptographers didn’t see it this way. Most seemed to feel that the disclosures didn’t even implicate us cryptographers. 

I think that they do. So I want to talk about the moral obligations of cryptographers, and my community as a whole. This is not a topic cryptographers routinely discuss. In this post-Snowden era, I think it needs to be. 

My thoughts:

1) I would add that the Target Breaking, the SONY hack, and the OPM breakin might also show that crypto has been a failure. He doesn't seem to mention those but I think they strengthen his case.

2) Might it be Security that is a colossal failure? Of course, crypto and security go together so it may be hard to disentangle whose failure it is.

3) Might it be that good crypto research has been done but is not being used- the tech transfer problem. He later claims that this would be relevant if crypto worked on the right problems in the
first place.

4) I tend to think he's right. Rather than me telling you why I think he's right, just read his paper.


Wednesday, March 09, 2016

David Johnson (1945-2016)

David Johnson, a leader and advocate for algorithms and all of theoretical computer science, passed away yesterday at the age of 70. A truly sad day for us all.

David's 1979 book with Michael Garey, Computers and Intractability: A Guide to the Theory of NP-Completeness, is still the best reference on the topic and perhaps the single most important resource in any computer scientist's library. David Johnson also wrote the NP-completeness column for the Journal on Algorithms and later the ACM Transactions on Algorithms, as well as "A Catalog of Complexity Classes" for the 1990 Handbook of Theoretical Computer Science. David founded the Symposium on Discrete Algorithms (SODA), a conference that is now often mentioned with STOC and FOCS as a top theory venue. He created the DIMACS algorithms challenges. He led SIGACT from 1987-1991, really transforming that organization, and served as its face for many years thereafter. I'm only scratching the surface of what he's done for the community, and can think of no one who put more effort into making the theoretical computer science as strong as it is.

Of course David was a great researchers as well, working on NP-completeness and approximation algorithms.

He received an ACM Fellow in 1995, the first SIGACT Distinguished Service prize in 1997 and the Knuth Prize in 2010. He used his Knuth prize lecture to push for practical applications for our algorithms. Just last month he was elected into the National Academy of Engineering.

I worked with David Johnson closely on various SIGACT activities. David never missed a STOC and we always invited him to the SIGACT Executive Committee dinners, not because he had an official role, but because he was David Johnson. I truly respected and admired David and glad I could call him a friend. We'll miss him deeply. STOC and SODA just won't be the same without him.

Monday, March 07, 2016

When do we care about the constants?

I've been reading two books recently: Asymptopia by Joel Spencer (He turns 70 soon!  Workshop for it!. My nephew things that celebrating your bday with a workshop would be... odd) and   The Joy of Factoring by Simon Wagtaff. In terms of content they are on two different topics. In terms of practicality they are different: Asymptopia is clearly a pure math book (there is one chapter on algorithms, but the rest is really pure math) whereas The Joy of Factoring is very practical in that it focuses on real algorithms for the important (for crytography) practical problem of factoring. However, there is one thing the books had in common: They both often care about multiplicative constants.

Example from Asymptopia: They gave better and better lower bounds on Ramsey numbers:

(1) R(k)  ≥  (1+o(1))(k/e sqrt(2)) 2k/2  roughly (1+o(1))(0.26)2k/2

(2) R(k)  ≥  (1+o(1))(k/e) 2k/2 roughly (1+o(1))(1+o(1))(0.37)k/2

(3) R(k)  ≥  (1+o(1))(k/sqrt(2)) 2k/2 roughly (1+o(1))(0.71)k/2

(It may be hard to read so I will clarify- the o(1) is little-o, a term that goes to 0 as k gets large.)

The first lower bound uses the prob method and you the reader has prob seen it or could prob derive it yourself. Prob. The second lower bound uses prob and a  clever way of coloring and then tossing out some vertices. The third lower bound uses the Local Lovasz Lemma.

Note that for this problem Joel Spencer cared about the constant.

Example from The Joy of Factoring: Since many (but not all!) factoring algorithms do not have rigorously proven run times (Number Theory is Hard!) it's harder to give clean examples here. The book often refers to tricks to get constants down and the notion that constants matters permeates the book. Here is one rigorous example of caring about constants:

Fermat's difference-of-squares algorithm goes as follows: We want to factor N. Let x=floor(sqrt(N)). Test each of the following numbers for being a square and stop when you get a square: x2-N, (x+1)2-N, (x+2)2 - N, etc. When you find an r such that (x+r)2-N=y2  then you have (x+r-y)(x+u+y)=N. Almost surely this is a nontrivial factorization of N. (This algorithm is worse than the trivial sqrt(N) algorithm in some cases; however, it has some of the ideas needed for more sophisticated algorithms including the Quadratic Sieve.) Of course, one might be looking for the right r a long time. How long:

Let a be the largest divisor of N that is ≤ \sqrt(N). Let k=a/sqrt(N). Then the search will take

1+ (1-k)2sqrt(N)/(2k)

Again note that there are no hidden multiplicative constants.

So when do we care about constants and why?

1) If you are working on an algorithm for a problem people really want to solve then you need the constants to be small.

2) If you can get good bounds on the exact constants then you should.

3) If you have a technique and try it out you might end up just improving the constant. Even so, you have showed that the technique has merit.

4) Improving the constant may show progress which will later lead to more important improvements.

5) Chicken and Egg:  Here is an example from Asymptopia where he didn't care about the constant: Fix ε. Given three points in the unit square what is the prob that their area will be ≤ ε ?   He showed its Θ(ε).This proof is very nice. Tracking the constants used in his proof looks tedious. In order to care about the constants perhaps we need an interesting proof about them. To look for a proof technique that applies to them perhaps we need to care in the first place. Chicken and Egg?



Wednesday, March 02, 2016

Changing This Ancient Art Into a Science

The ACM announced yesterday that they will award the 2015 Turing Award to Whitfield Diffie and Martin Hellman for contributions to modern cryptography. The Turing award is the highest honor in all of computing. John Markoff in the New York Times also has the story.
Diffie and Hellman are best known for public-key cryptography, the brilliant idea that one could communicate secretly with someone you haven't communicated previously. Without public-key cryptography there would be no e-commerce. Equally important Diffie and Hellman brought computational complexity to bare, moving cryptography into its modern age. I strongly recommend reading their 1976 gem New Directions in Cryptography (PDF) particularly the introduction and chapter 6 where Diffie and Hellman connect cryptography to computational complexity and the P v NP problem itself defined only five years earlier. Here's the first paragraph:
We stand today on the brink of a revolution in cryptography. The development of cheap digital hardware has freed it from the design limitations of mechanical computing and brought the cost of high grade cryptographic devices down to where they can be used in such commercial applications as remote key cash dispensers and computer terminals. In turn, such applications create a need for new types of cryptographic systems which minimize the necessity of secure key distribution channels and supply the equivalent of a written signature. At the same time, theoretical developments in information theory and computer science show promise of providing provably secure cryptosystems, changing this ancient art into a science. 
One question for which I shall offer no opinion: Should Ralph Merkle have been a co-recipient of this award? 

Monday, February 29, 2016

It works in practice, but does it work in theory (Pollard's Factorization algorithm)


Throughout this post I ignore  polylog factors.

It is trivial to factor N in time N1/2.  Pollard's rho-algorithm (see my write up here or Wikipedia Entry) for factoring does bette expected time N1/4. Or does it?  It works well in practice but  has not been proven to work well in theory. (If I missed some paper that DID prove it works well in theory please leave a polite comment.)

Here we state a conjectures that, if true, will show that  Pollard's algorithm is in time (randomized)  N1/4.  Let p be a prime. Let c be in {2,...,p-1}.

Let fc(x)= x2 + c mod p.

x1 will be specified in the conjecture. xi is f(xi-1).

For at least half of the elements x1 in {2,...,p-1} and at least half of the elements c in {2,...,p-1} the sequence x1, x2,... will have a repeat within the first O(p1/2) items.

This is thought to be true since it is thought that the sequence is random-enough so that the birthday paradox will  work. Still... no proof.

When reading some algorithms papers the interest is in getting an algorithm that you can PROVE the run time of.  By contrast, papers on factoring and discrete log and other things that are used to break crypto systems the interest is more in getting something that actually works. I have to learn to stop thinking ``but they haven't proven that!'' and start thinking ``Oh, yes, that would work''. And to be fair, for Pollard's algorithms and others (e.g., quad sieve, number field sieve, which do better in practice than Pollard for large enough numbers) there are REASONS to think they will work well. 

More generally, theoretical and applied work may need different mentalities.

Thursday, February 25, 2016

Primary Game Theory

[Nominations open for the SIGACT Distinguished Service Prize. Deadline: April 1]

The US presidential primaries have not gone as expected as you can see from the crazy shifts in the prediction markets. This year besides the usual democratic/republican split, we have an establishment/non-establishment split in both parties. Back in my day outside candidates like Trump, Cruz and Sanders would have run as independents like Ross Perot and John Anderson.

Despite the split, the establishment candidates focus more on themselves than the establishment. Christie's attack on Rubio in New Hampshire may have handed Trump the election and it certainly didn't save Christie's campaign. Kasich should just drop out now if he cares about keeping the nomination for an establishment candidate--it's just not his year, though maybe he's playing some game theory of his own.

The democratic side does not offer such interesting game theory, since we have a two horse race. Mostly a one horse race because the delegate math doesn't work well for Sanders.

Let's look at the election from the point of view of a hypothetical Georgia voter voting on Super Tuesday next week. Such a voter can choose which primary to vote on in election day.

Clinton will easily win Georgia but as long as Bernie gets at least 15% of the vote (likely), delegates will be allocated proportionally. So a vote in the democratic primary could affect a delegate but less likely to to affect who will be the nominee than on the Republican side. Unless Bernie surprises in South Carolina, the hypothetical voter may opt to vote in the Republican primary instead.

The republican delegate allocation rules most likely mean that the candidates receiving at least 20% of the votes will get a proportional allocation of 31 delegates and the winner in each of the 14 congressional districts gets two delegates while the runner up gets one. Looking at the polls, Trump will easily win the election with Cruz and Rubio hovering about 20%. A single vote could affect 6 delegates (20% of Georgia's at large 31 delegates). A vote for Kasich or Carson would not net Kasich or Carson any delegates but could bolster Trump by pushing Rubio's vote percentage down towards that 20% mark.

This scenario plays out across the Super Tuesday primaries. Trump is favored to win in every state voting that day except Cruz's Texas. If Rubio can get at least 20% of the vote in those states he keeps the race alive and could make up ground in winner-take-all states coming up later. Kasich doesn't draw much voters but enough that by not dropping out he may help close out this election on Tuesday. Game theory indeed.

In an early primary season already full of surprises we may see many more. It would be a lot more fun to watch if the fate of the US and the entire world didn't depend on the outcome.

Monday, February 22, 2016

What is a `previous publication'?

 Here are the guidelines about submission to STOC 2015 with regard to
submitting a prior published paper. I assume that most of the Theory Conferences have a similar policy.


Prior and Simultaneous Submissions: The conference will follow SIGACT's policy  on prior publication and simultaneous submissions. Abstract material which has  been previously published in another conference proceedings or journal, or  which is scheduled for publication prior to July 2015, will not be considered  for acceptance at STOC 2015. The only exception to this policy are prior or  simultaneous publications appearing in the Science and Nature journals.  SIGACT policy does not allow simultaneous submissions of the same (or essentially the same) abstract material to another conference with  published proceedings. The program committee may consult with program chairs of other (past or future) conferences to find out about closely related  submissions.

Here is a question that I ask non-rhetorically. What if Alice has a paper in arXiv in 2010 and submits it to STOC in 2012. Technically it has not been published before. However, it certainly is not new.

Should this be allowed? Under the current rules of course YES. Should the rules be changed? A paper can be out there  without it being published. Should the rules be changed to reflect this? I think NOT since it might be hard to define carefully and I don't want people to discourage posting on arXiv.

Should the committee be allowed to take its not-newness into account in judging it?  Do they already?  And the notion of   well known or out there are subjective.

BOB: This paper has been known about for years.

EVE: Well, I didn't know about it, so for ME its new!

There might be a newness/quality trade off. If Donna posted her proof that P=NP in 2020 but submitted it to STOC 2030, I think it would still get in. By contrast if Bob posts a proof of a good but not great paper that is STOC-worthy in 2020, and then submits it in 2030,, I think it would not get in.

Then again, by 2030 maybe we will have changed the prestige-conference model we currently use.



















Thursday, February 18, 2016

Posting Papers

In the ancient days of the 80's, if someone wanted a paper from you, they would ask and you would mail via post. Sometimes I would get a self-addressed envelope asking for a certain paper. Departments would maintain collections of local technical reports. Someone could request a paper, an admin would make a copy, slap on a cover and send it out.

In the 90's, we started distributing papers by email, but then who you sent papers to started to matter. As soon as we had a browser in 1993, for fairness, though more because I got tired of responding to paper requests, I put together a page that had electronic copies of all my papers. Over the years those files have gone from postscript to pdf and the page started as html and later I used bib2html which I kept going on my old Chicago CS account that nobody bothered turning off. Bib2html failed to work for me last week, I asked the twitterverse for an alternative and they answered. I went with bibbase and now can reveal my new paper page. Pretty easy to tell from the page when I started as a department chair. I kept the old page active just in case but it will no longer be updated.

Sometimes I wonder why I bother and just let people use Google Scholar or DBLP to find my papers. I guess I'm just not ready to give up this record of my research life.

Sunday, February 14, 2016

∑{p≤ n} 1/p = ln(ln(n)) + o(1). read it here because....

(Last April fools day I  posted four links to stories that seemed absurd and asked which one was false. They all were true. I recently came across five  stories that all seem absurd but are all real, but three of them can't wait until April 1 since they are about current political events. Here they are:
Amazon to open many brick-and-mortar stores.
Why John Kasich got second place in New Hampshire (whch was better than expected).
Jim Gilmore's (who?) low expectations,
Why Ben Carson left Iowa.
airpnp- not about P vs NP
Donald Trump defends.... (I added this one on March 14)
And now back to our regularly scheduled blog)




A while back Larry Washington (number theorist at UMCP) showed me a simple proof that

∑p ≤ n 1/p = ln(ln(n)) + o(1)

(p goes through all the primes ≤ n.)

Recently I tried to remember it and could not so I looked on the web and... I could not find it! I found proofs that the sum is at least ln(ln(n)) as part of a proof that the series diverges, but could not find a simple  proof of the equality.

I asked Larry Washington to email me the proof, and then (and this happens often) while waiting for the response I came up with it.

Anyway, to try to avoid what Lance pondered, the deterioratation of math over time, I post the proof here.Read it here since you probably can't find this proof elsewhere.

I continue to be amazed at both what IS and IS NOT on the web.

(ADDED LATER- one of the comments pointed to links on the web that DO contain the proofs I could not find.)

Thursday, February 11, 2016

Test of Time Award- a good idea but...

The ESA Conference (European Symposium on Algorithms) has a test-of-time award
which

recognizes outstanding papers in algorithms research that were published in the ESA proceedings 19-21 years ago and which are still influential and stimulating the field today.

This sounds like a great idea- some papers are more influential then people might have thought when they first got into ESA, and some papers are less influential then people might have thought. And I am happy that Samir Khuller (my chair) and Sudipto Guha (a grad student when the paper was written) won it for their paper Approximating Algorithms for Connected Dominating Sets.

But there are two things that are not quite right.

1) 19-21 years. That seems like a very small window.  '

2) The paper has to have been published in ESA.

Together this makes the job of the panel that decides the award easier as they only have to look at three years of conferences.  But there are many fine papers in algorithms that are not in ESA and there may be an awesome three year period and then a draught, so the window seems short.

But rather than complain let me ask some well defined questions:

Are there any other awards with a lower limit (in this case 19 years) on how long the paper has to be out, so that its influence can be better appreciated? This is a good idea, though 19 seems high.  Awards for a lifetime of work are often similar in that the are given after the works influence is known.

Are there any other awards that restrict themselves to ONE conference or journal? Of course best-paper and best-student-paper awards to that, but I don't know of any others.

ADDED LATER: A commenter says that there are LOTS of test-of-time awards associated to conferences:

see here

STOC, FOCS, SODA, CCC don't have them so I foolishly thought that was representative.
That raises another question - why do some conferences have it and some dont'?






Monday, February 08, 2016

The Moral Hazard of Avoiding Complexity Assumptions

Moshe Vardi's CACM editor letter The Moral Hazard of Complexity-Theoretic Assumptions practically begs a response from this blog. I also encourage you to read the discussion between Moshe and Piotr Indyk and a twitter discussion between Moshe and Ryan Williams.

I take issue mostly with the title of Vardi's letter. Unfortunately we don't have the tools to prove strong unconditional lower bounds on solving problems. In computational complexity we rely on hardness assumptions, like P ≠ NP, to show that various problems are difficult to solve. Some of these assumptions, like the strong exponential-time hypothesis, the Unique Games Conjecture, the circuits lower bounds needed for full derandomization, are quite strong and we can't be completely confident that these assumptions are true. Nevertheless computer scientists will not likely disprove these assumptions in the near future so they do point to the extreme hardness of solving problems like getting a better than quadratic upper bound for edit distance or a better than 2-ε approximation for vertex cover.

If you read Vardi's letter, he doesn't disagree with the above paragraph. His piece focuses instead on the press that oversells theory results, claiming the efficiency of Babai's new graph isomorphism algorithm or the impossibility of improving edit distance. A science writer friend once told me that scientists always want an article to be fully and technically correct, but he doesn't write for scientists, he writes for the readers who want to be excited by science. Scientists rarely mislead the press, and we shouldn't, but do we really want to force science writers to downplay the story? These stories might not be completely accurate but if we can get the public interested in theoretical computer science we all win. To paraphrase Oscar Wilde, as I tweeted, the only thing worse than the press talking about theoretical computer science results is the press not talking about theoretical computer science results.

Thursday, February 04, 2016

Go Google Go

In 2009 I posted about a surprising new approach that moved computer Go from programs that lose to beginners to where it could beat good amateurs. That approach, now called Monte Carlo Tree Search, involves evaluating a position using random game play and doing a bounded-depth tree search to maximize the evaluation.

Google last week announced AlphaGo, a program that uses ML techniques to optimize MCTS. This program beat the European Go champion five games to none, a huge advance over beating amateurs. In March AlphaGo will play the world Go champion, Lee Sedol, in a five game match. The world will follow the match closely (on YouTube naturally). For now we should keep our expectations in check, Deep Blue failed to beat Kasparov in its first attempt.

Google researchers describe AlphaGo in detail in a readable Nature article. To oversimplify they train deep neural nets to learn two functions, the probability of a win from a given position, and the probability distribution used to choose the next move in the random game play in MCTS. First they train with supervised learning based on historical game data between expert players and then reinforcement learning by basically having the program play itself. AlphaGo uses these functions to guide the Monte Carlo Tree Search.

AlphaGo differs quite a bit from chess algorithms.
  • AlphaGo uses no built-in strategy for Go. The same approach could be used for most other two player games. I guess this approach would fail miserably for Chess but I would love to see it tried.
  • Machine learning has the nice property that you can train offline slowly and then apply the resulting neural nets quickly during gameplay. While we can refine the chess algorithms offline but all the computation generally happens during the game.
  • If a computer chess program makes a surprising move, good or bad, one can work through the code and figure out why the program made that particular move. If AlphaGo makes a surprising move, we'll have no clue why.
  • I wonder if the same applies to human play. A chess player can explain the reasoning behind a particular move. Can Go players do the same or do great Go players rely more on intuition?
Machine learning applications like AlphaGo seemingly tackle difficult computational problems with virtually no built-in domain knowledge. Except for generating the game data for the supervised learning, humans play little role in how AlphaGo decides what to do. ML uses the same techniques to translate languages, to weed out spam, to set the temperature in my house, and in the near future to drive my car. Will they prove our theorems? Time will tell. 

Monday, February 01, 2016

Math questions that come out of the Iowa Caucus

Link for info I refer to here

Jim Gilmore, republican, has 0% of the vote. Does that mean that literally NOBODY voted for him?

Hillary beat Bernie , but BOTH get 21 delegates. I hardly call that a win. I call that a tie.


Why do we refer to Hillary and Bernie by their first names, but most of the republicans by their last name. The only exception is Jeb! who we call Jeb to dist from his brother. Also, I think he wants to play down his relation to his brother. Not that it will matter.

Cruz/Trump/Rubio will get 8,7,6 delegates.(This might change but not by a lot). I'd call that a tie. Later states will be winner-take-all which make no sense in a race with this many people (though it may go down soon-- Huckabee has already suspended his campaign which seems like an odd way of saying I quit). But in winner-take-all states there will be real winners.  Why are there winner-take-all states? It was a deal made so that those states wouldn't move their primaries up.

This is a terrible way to pick a president. I don't mean democracy which is fine, I mean the confusing combination of Caucus's and Primaries, with some states winner-take-all, some by proportion, and Iowa and NH having... more power than they should.  This was NOT a planned system it just evolved that way. But its hard to change.

If you are a registered Republican  but want Hillary to win then do you (1) vote for the republican you like the best, or (2) vote for the Republican that Hillary can most easily beat. The problem with (2) is that you could end up with President Trump.

Stat analysis of polls and looking at past trends have their limits for two reasons:

1) The amount of data is small. The modern primary system has only been in place since 1972.  Some nominations are incumbents which are very different from a free-for-all. The only times both parties had free-for-alls were 1988, 2000, 2008, and 2016.

2) Whatever trends you do find, even if they are long term (e.g.,  the tallest candidate wins) might just change. The old Machine Learning warning: Trends hold until they don't.

Most sciences get BETTER over time. Polling is a mixed bag. On the one hand, using modern technology you can poll more people. On the other hand, people have so many diff ways to contact them that its hard to know what to do. For example, its no longer the case that everyone has a landline.

Is this headline a satire?:here


AI project- write a program that tells political satire from political fact. Might be hard.

My wife pointed out that

Hillary WINS since she didn't lose!

Bernie WINS since an insurgent who TIES the favorite is a win

Cruz WINS since... well, he actually DID win

Trump WINS since his support is mostly real and he didn't collapse. And he was surprisingly gracious in his concession speech. (This is the weakest `he WINS' argument on this list)

Rubio might be the BIG WINNER since he did way better than expected. Thats a rather odd criteria and it makes people want to set their expectations low.

SO--- like a little league game where they all tried hard, THE'RE ALL WINNERS!

 The American Public--- not so much.




Thursday, January 28, 2016

We Still Can't Beat Relativization

As we celebrate our successes in computational complexity here's a sobering fact: We have had no new non-relativizing techniques in the last 25 years.

A little background: In 1975, a few years after Cook established the P v NP problem, Baker, Gill and Solovay created two sets A and B such that every NP machine that could ask questions about A could be simulated by a P machine that could ask questions to A and there is some language accepted by an NP machine that could ask questions to B that cannot be solved by a P machine that could ask questions to B. In other words PA = NPA but PB ≠ NPB.

All the known proof techniques at the time relativized, i.e., if you proved two classes were the same or different, they would be the same of different relative to any set. BGS implied that these techniques could not settle the P v NP problem.

In the 80's and 90's we got very good at creating these relativized worlds and, with a couple of exceptions, we created relativized worlds that make nearly all the open questions of complexity classes between P and PSPACE both true and false.

There were some results in the that were non-relativizing for technical uninteresting reasons. In the late 80s/early 90s we had some progress, results like NP having zero-knowledge proofs, co-NP (and later PSPACE) having interactive proofs and NEXP having (exponential-sized) probabilistically checkable proofs, despite relativized worlds making those statements false. But then it stopped. We had a few more nonrelativizing results but those just used the results above, not any new techniques.

In 1994 I wrote on survey on what relativization meant post-interactive proofs, still mostly up to date. We have seen new barriers put up such as natural proofs and algebrization, but until we can at least get past traditional relativization we just cannot make much more progress with complexity classes.

Sunday, January 24, 2016

When do we stop giving the original reference?


I was preparing  a talk which included my result that there is a sane reduction 4-COL \le 3-COL (the paper is here) when I  realized that if I am going to claim the reduction is by Gasarch then I should find out and credit the person who proved 3-COL NP-complete (I assume that the result 3-COL \le 4-COL is too trivial to have an author).  I could not find the ref on the web (I am sure that one can find it on the web, but a cursory glance did not yield it).  The reference was not in Goldreich's complexity book, nor the CLR Algorithms book. I suspect its not in most recent books.

The reference is Stockmeyer, SIGACT NEWS 1973,

Few modern paper references Cook or Levin's original papers for the Cook-Levin Theorem. I've even heard thats a sign its a crank paper.

Few modern papers reference Ramsey's original paper for Ramsey's Theorem.

But the questions arises--- when is a result such common knowledge that a ref is no longer needed?

A result can also go through a phase where the reference is to a book that contains it, rather than the original paper.

On the one hand, one SHOULD ref the original so that people know who did it and what year it was from. On the other hand there has to be a limit to this or else we would all be refering to Euclid and Pythagoras.

Where does Stockmeyer's result fall? I do not know; however, I've noticed that I didn't reference him, and I will correct that.

Thursday, January 21, 2016

The Growing Academic Divide

The decreases of the past three years bring the number of advertised jobs to a new low, below the level reached after the severe drop between 2007–08 and 2009–10. 
So reads the Report on the Modern Language Association Job Information List. The MLA is the main scholarly organization for the humanities in the US. The bright spot--we aren't Japan.

Meanwhile in computer science we continue to see large enrollment increases in major, minors and students just wanting to take computer science courses. In the upcoming CRA Snowbird Conference "a major focus of the conference will be booming enrollments, with a short plenary followed by parallel sessions devoted to the topic, its various ramifications, and ideas to help you deal with it, including best practices for managing growth."

The 2015 November CRA News had 83 pages of faculty job ads, up from 75 in 2014 and 34 in 2012. This doesn't even count that fact that many departments are looking to hire two, three, four or more positions in CS. It will be an interesting job market this spring.

All of this is driven by jobs. We can't produce enough strong computer scientists to fill industry demand. And it's becoming increasingly hard for a humanities major to get a good first job.

It's nice to be on the side of growth but it's a shame that faculty hiring seems to be a zero-sum game. We need poets as well as nerds. We've help create a world where we have made ourselves indispensable but is this a world we really want to live in?

Monday, January 18, 2016

Is it okay to praise an article or book in an article or book?

I recently had a paper accepted (YEAH!). The referees had some good corrections and one that puzzled me.

you wrote ``our proof is similar to the one in the wonderful book by Wilf on generationg functions [ref]''. You should not call a book wonderful as that is subjective. You can say it's well known.


I asked a pretension of professors about this. Is it okay to praise an article or book? Is it okay to state an opinon? Would the following be acceptable:

1) In Cook's groundbreaking paper SAT was shown to be NP-complete. It IS grounbreaking, so maybe thats okay.

2) Ramsey's paper, while brilliant, is hard for the modern reader to comprehend. Hence we give an exposition. If I am writing an exposition then I might need to say why the original is not good to read so this is informative.

3) Ryan Williams proved an important lower bound in [ref]. Is this okay to write? For most people yes, but NOT if  you are  Ryan Williams. (He never wrote such.)

4) William Gasarch proved an unimportant lower bound in [ref]. Is this okay to write ? Only if you ARE William Gasarch (He never wrote such).

The version that will be in a journal will indeed NOT call Wilf's book wonderful. The version on arXiv which will be far more read (not behind a paywall) will call Wilf's book wonderful.




Thursday, January 14, 2016

A limit on the DFA-CFG divide for finite sets

It is easy to see that for Ln =  {a,b}*a{a,b}2n

There IS a CFG of size O(n)

ANY DFA is of size double-exp-in-n

I was wondering if we can increase this gap. That is, a statment like: For all but a finite number of n there exists a lang Ln such that

There IS a CFG of size O(n)

ANY DFA is of size triple-exp-in-n.

I also looked at finite sets. For COMPLIMENT of { ww : |w|=2n }

There IS a CFG of size O(n)

ANY DFA (in fact any DPDA) is of size double-exp-in-n.

This is stated in my paper here though the real interesting math needed to get it are in here where they get lower bounds on the size of CFG's, generalizing techniques from here.

SO my question still stands- can we get a triple exp separation? I have shown that this CANNOT be achieved with finite sets:

THEOREM: If L is a finite lang then there exists n such that (1) Any CFG in Chomsky Normal Form for L has to be of size \ge log n, AND (2) there IS a DFA of size 2n.

Proof:  Let n be such that the longest string in L if of length n.  In order for a Chomsky Normal Form grammar to generate this string it needs \ge log n nonterminals. Since the lang has at most 2n
strings in it, there is a DFA of size 2n for it.
End of proof.

So I have shown that one approach won't work. I am hoping that YOU know an approach to get
a trip-exp-sep and leave a comment about it.







Monday, January 11, 2016

A question in Formal Lang Theory about Size of Desc of Languages.


(This post is inspired by me thinking more about this blog entry  and this paper.)

Upper bounds on n are really O(n).
Lower bounds of f(n) are really Omega(f(n))

DPDA = Deterministic Push Down Automata

NDFA = Nondet. Finite Aut.

DFA = Det. Finite Aut.

It is known that FOR ALL n there is a lang Ln such that there is an NDFA of size n, but ANY DFA for Ln  is of size at least  2n :  Ln = (a,b)*a(a,b)n.  for DFA-exactly 2n,  NDFA- n+2. One can also get 2n and n.

It is known that FOR ALL n there is a lang Ln such that there is a DPDA of size n, but ANY NDFA for Ln  is of size at least roughly 2n size: Ln={a2n  }. (ADDED LATER TO CLARIFY- NOTE THAT
Ln is a one-element set, hence regular.)

Can we acheive both at the same time? Is the following true: for all n there exists Ln such that

1) There is a size n DPDA for Ln.

2) Any NDFA for Ln requires size  2n.

3) There IS an NDFA for Ln of size 2n.

4) Any DFA for Ln requires size  22n.

If we replace DPDA with PDA then { (a,b)*a(a,b)2n } works.



Wednesday, January 06, 2016

Rūsiņš Freivalds (1942-2016)

Rūsiņš Mārtiņš Freivalds passed away on Monday from a heart attack at the age of 73. I met Freivalds several times often through Carl Smith, who passed away himself in 2004. Rūsiņš, Carl, Bill, myself and a couple of others have a joint paper on inductive inference and measure theory. Freivalds is the sixth co-author I've lost and it never gets easier.

Rūsiņš Freivalds did much of the early work in probabilistic algorithms and automata, and in inductive inference, a computability-theoretic approach to learning. In the 70's he found fast probabilistic algorithms for checking multiplication of integers and matrices. More recently he has looked at quantum finite automata. He supervised several PhD students including Andris Ambainis, one of the leading researchers in quantum algorithms.

Mostly I remember Freivalds as the leader of the Latvian theoretical computer science community and just an extremely nice and friendly colleague. I am glad to have known and worked with him.

Sunday, January 03, 2016

Predictions for 2016

This is the first post of 2016! (that is not a factorial). Hence I will make some predictions and at the end of the year I'll see how I did

1)  The USA Prez election will have two main candidates: Hillary Clinton and Ted Cruz. Clinton will win by floating rumors that Cruz was born in a foreign country.

2) There will be a proof that  there exists a constant c such that the methods that got a lower bound of (3+1/86)n on an explicit function cannot be extended to cn.

3) P vs NP will not be solved. But see next point.

4) I will be asked to look at at least two resolutions of P vs NP. This year I was asked to look at two
proofs that P=NP. Neither was correct.

5) GI will still not be in known to be in P.

6) There will be a proof that Babai's techniques cannot get GI into P.

7) The fact that 2016=25327 will be useful in a math competition.

8) Posting a video of a talk (as Babai did) will become an acceptable way to claim a result, rather than having a paper on arXiv. Getting a paper in a Journal will become less and less relevant for big results.
(This is a topic for a later blog post.)

9) The Unique Game conjecture... When it was first stated it seemed like maybe it could be proven or disproven. The longer it stays open the harder it seems. Clyde Kruskal tells me that a good method for guessing how long a problem will stay open is how long its been open.  So I'll predict it won't be resolved this year. However, by that reasoning, I will always predict it will not be resolved in the following year.

10) There will be a big data breach. The security protocols used were never proven secure, though that won't be what caused the breach.  Nor was it caused because of a really fast factoring or DL algorithm.

11) Comp Sci enrollment will continue to rise.

12) Leave your predictions in the comments!

Monday, December 28, 2015

Complexity Year in Review 2015

We had an incredible year for theorems in 2015, the strongest year in computational complexity in the last decade. Topping the list as the theorem of the year is László Babai's quasipolynomial-time algorithm for graph isomorphism. A little risky because nobody, including Babai himself, has fully verified the proof but given Babai's reputation and the warm reception of his lectures, I have little doubt it will all work out. Again I strongly recommend watching the video of Babai's first lecture. Not only is Babai a great researcher but he's an excellent speaker as well. For the those up to the challenge, the paper is now available as well.

Beyond Babai's result we had a great year including random oracles separating the polynomial-time hierarchy, the (3+1/86)n size lower bound for general circuits, Terry Tao's solution to the Erdős discrepancy problem, explicit constructions of Ramsey Graphs and new bounds on threshold circuits.

We celebrated 50 years of computational complexity and Moore's law, the centenary of Hamming and the bicentenaries of Ada Lovelace and George Boole, the latter giving us the Boolean algebra. In 2016 we will celebrate the centenary of the person who used those bits to describe information.

We thank our guest posters Dylan McKay and Thomas Zeume. Dylan's metric group problem is still open if anyone wants to try and crack it.

In 2015 we continue to see CS departments struggle to meet the demand of students and industry. US universities faced many difficult challenges including dealing with race relations, freedom of speech and safety issues. Too much tragedy in the US and abroad, and a far too divisive political campaign. Here's hoping for reason to prevail in 2016.

We remember Gene Amdahl, Alberto Apostolico, Barry Cooper, George Cox, Jiří Matoušek, John Nash, Leonard Nimoy, Hartley Rogers Jr., Donald Rose, Karsten Schwan and Joe Traub.

Wishing everyone a Happy New Year and a successful 2016.

Tuesday, December 22, 2015

Guns and Crypto

“We believe it would be wrong to weaken security for hundreds of millions of law-abiding customers so that it will also be weaker for the very few who pose a threat,” said a spokesperson from Smith & Wesson on the recent calls for increased gun control.

The quote was actually from Apple on a proposed British law that would require the company to devise methods to break into iPhone communications.

In the wake of Paris and San Bernardino we've heard calls for controls on both guns and cryptography with eerily similar arguments coming from defenders. If we ban guns/crypto then only bad people will have guns/crypto. Any attempts to limit guns/crypto is a slippery slope that takes away our constitutional rights and our freedoms.

I don't have a gun but I do use encryption, built into the iPhone and the various apps and browsers I use to communicate. Fat lot of good it does me as hackers stole my personal information because I shopped at Home Depot and Target. Because my health insurance runs through Anthem. Because I voted in the State of Georgia.

I am a strong believer in individual rights, a person should be able to use cryptography to protect their communications and a gun, if they wish, to protect their family. But I do see the value in gaining access in communications to stop a terrorist as well as making it harder for them to get the weapons to carry out their acts. Why can't the fingerprint technology that unlocks my iPhone also unlock a gun? The gun/crypto advocates don't trust to government to implement any restrictions reasonably and thus fight any changes.

No laws can completely eliminate or even restrict guns or crypto but they can make it harder to use. The challenges aren't technological, we can create guns or crypto protocols that perform as we want them to perform. The challenges are social, finding the right balance between rights and security and governments we can trust to enforce that balance.

Monday, December 21, 2015

Blog Followers

If you follow this or any other Blogger-based blog via a non-Google account, you'll need to follow with a Google account instead. Details.

Wednesday, December 16, 2015

Simons and Berkeley

The Simons Institute for the Theory of Computing in Berkeley held two programs this fall, Fine-Grained Complexity and Algorithm Design and Economics and Computation both ending this week. It would have been a great fall for me to spend there as I have strong connections in both groups, but as a department chair and father to a high-school senior it would have been impossible to be away from Atlanta for an extended period of time.

But I did manage some short trips, my first to Simons. In September I went to attend the workshop on Connections Between Algorithm Design and Complexity Theory but had to leave early and to make up for it I visited for a few days last week as well. The Simons Institute has taken over Calvin Lab, a circular building on the UC Berkeley campus. Lecture rooms on the first floor, wide-open working spaces on the second floor where most people congregate and visitor offices on the third floor. It's not just the space but an incredible group of complexity theorists and EC types there this fall.

The year marks thirty years since I spent that not-so-happy year of grad school in Berkeley. The city of Berkeley has mellowed a bit. When I lived there before, many recent graduates didn't leave and instead remained in their cheap rent-controlled apartments. Now you see almost a bimodal distribution centered around college-aged students and late middle-aged residents. Berkeley housing is getting hard to find again, this time because of overflow from limited affordable housing in San Francisco. Still Berkeley seems like a city that has never grown up. I guess people like it that way.

Thursday, December 10, 2015

Ada Lovelace (1815-1852)

Back in my teens I had ordered my first computer, a TRS-80 from Radio Shack, and I grew anxious in the weeks before it arrived. I learned the basics of BASIC and started writing programs on paper ready to be typed into this new machine. Imagine though if I had to wait not just a few weeks but over a hundred years. Such was the fate of Augusta Ada King, Countess of Lovelace, born two hundred years ago today.

Ada, daughter of the poet Lord Byron, showed an early talent in mathematics. At age 17 she became a friend of Charles Babbage, inventor of the difference engine and proposed a more complex analytic engine. Babbage gave a talk at the University of Turin and Ada had the task of translating an article written by Italian engineer Luigi Menabrea based on the talk. Ada did more than just translate, she added her own thoughts which included a program that could be run on the analytic engine computing a specific sequence of numbers. The analytic engine never got built and Ada never saw her program run but nevertheless she gets credit as the first computer programmer and most notably in 1980 the US Department of Defense named their preferred computer language "Ada" in her honor.

Here's to Lady Ada Lovelace, born way too far ahead of her time.

Monday, December 07, 2015

crank math and crank people


In the same week I got email claming:

1) Babai had shown that GI is in quasipoly time.

2)  Opeyemi Enoch, a Nigerian Mathematician, solved the Riemann hypothesis.

I believe Babai's claim since (a) he's worked on the problem a lot and is a known expert, (b) the result is believable, and (c) the math we know now seem up to the task.

I do not believe Enoch's claim. It would be unfair for me to not believe it because I never heard of him. However, my sources in math say that RH is not in a position to be solved. Also, articles I've read on the web including   this article  seem to say things that cast doubts on it such as this quote:

 motivation to solve the problem came from his students, who brought it to him with the hope of making 1 million ``off the internet''

Bobby Jindall (who?)  dropped out of the Prez race (why am I bringing this up? Is he working on RH?) Bobby Jindall was a Rhodes Scholar. (why am I bringing this up? Wait and see.)

In 2003 I was in a Taxi (ask your grandparents what Taxi's were before we had Uber) and the driver began telling me lots of conspiracies--- there is no Gold in Fort Knx, the novel Goldfinger was Ian Flemmings attempt to tell us this, Reagan was shot because he knew this, and the American Presidency is controlled by a secret cabal.  I pointed out that if that's the case how did George Bush Sr (clearly a member of  the Cabal) lose to Bill Clinton.  His answer: Bill Clinton was a Rhodes Scholar and the Cabal is controlled by Rhode Scholars.

Its hard to argue with a conspiracy theorist about the past. But you can challenge him to predict the future. So I told him ``if you can predict who will be the Democratic Nominee for Prez in 2004 then I will look at your website and take it seriously. If not, then not''  He smiled and just said ``Wesley Clark was a Rhodes scholar'' If I had asked him who would be the republican nominee in 2016 then he might have said ``Bobby Jindal is a Rhodes Scholar''

The way to expose conspiracy theorists, astrologers,  and The National Inquirer is to take their predictions seriously and test them. I wonder why anyone believes these things given their track record.

Judging math things is different- A math paper can be read and should stand on its own.


Thursday, December 03, 2015

Moonshots

In 1961 Kennedy said "this nation should commit itself to achieving the goal, before this decade is out, of landing a man on the Moon and returning him safely to the Earth". In 1969 Neil Armstrong and Buzz Aldrin walked on the moon and returned to earth safely. In the 46 years hence man has gone no further.

Bill Gates founded Microsoft to place "a computer on every desk and in every home". Once he succeeded, Microsoft lost its way. Their current mission takes a different tact "Empower every person and every organization on the planet to achieve more."

In my life I've seen many a moonshot succeed, from a computer chess program that can beat the best humans, the classification of finite simple groups and the proof of Fermat's last theorem. They all seem to end up with a "Now what?". If you have a finite mission, you can only achieve finite things. We often think of moonshots as an amazing challenge but they serve as limits as well.

In computing we have a law that has become a mission, that the power of computing doubles roughly every two years. These improvements have enabled the incredible advances in learning, automation and connectivity that we see today. We keep making better computers because we don't have a limit just a goal of getting better than where we are today.

When I first started writing grant proposals, a senior faculty member chided me for saying "the ultimate goal of computational complexity is prove P ≠ NP". He said that would kill any grant proposals after we did settle the question. While we are in no danger of solving this problem in the near future, eventually we will and I'd hate to see the field whither afterwards.

My favorite mission comes from Star Trek, particularly the TNG version with "Its continuing mission: to explore strange new worlds, to seek out new life and new civilizations, to boldly go where no one has gone before."

Sunday, November 29, 2015

One more sign that a Journal is bogus. Or is it?

I went to an AMS conference with my High School Student Naveen (who presented  this paper)  and an ugrad from my REU program Nichole (who presented this paper). Note that this is a math conference- low prestige, mostly unrefereed, parallel sessions, but still a good place to pick up some new problems to work on and learn some things, and meet people.

Both Naveen and Nichole later got email from a journal urging them to submit their work! They were also invited  to be on the Editorial Board! I can understand inviting a HS student who is a SENIOR to be on an editorial board, but Naveen is a SOPHMORE!

Naveen and Nichole  both emailed me asking what this was about and I looked around and found, not to my surprise, that the journal is an author-pays journal of  no standards. On the other hand, it was open access, on the other other hand, they had an article claiming that R(4,6)=36 (might be true, but if this was known, I would know it, see this blog post for more on that proof technique).

The pay-to-publish model is not necc. bad, and is standard in some fields, but is unusual for math. Of perhaps more importance is that the journal had no standards. And they prey on the young and naive.

Or do they?

Consider the following scenario:  Naveen  publishes in this journal and this publication is  on his college application, hence he gets into a good college with scholarship. He knows exactly what he is buying. Or Nicole does this to help her Grad school Application.  Or I do this for my resume and get a salary increase. Or an untenured prof does this to get tenure ( Deans can count but they can't read). And it gets worse--- the school gives the prof tenure, knowing the papers are bogus, but now they can say they have a prof who publishes X papers a year! At some point I don't know who is scamming who.

This blog post (not mine) gives several criteria for when a journal is bogus. I'll add one: When they ask a 15 years old to be on their editorial board.


Monday, November 23, 2015

Star Trek Computing

In the wake of Leonard Nimoy's death last February, I decided to rewatch the entire original Star Trek series, all 79 episodes. I had watched them each many times over in high school in the 70's, though the local station removed a scene or two from each episode to add commercial time and I often missed the opening segment because I didn't get home from school in time. Back in those stone ages we had no DVR or other method to record shows. I hadn't seen many episodes of the original series since high school.

Now I can watch the entire episodes whenever I want in full and in order through the magic of Netflix. I finished this quest a few days ago. Some spoilers below.

I could talk about the heavy sexism, the ability to predict future technologies (the flat screen TV in episode 74), the social issues in the 23rd century as viewed from the 60's, or just the lessons in leadership you can get from Kirk. Given the topic of this blog, let's talk about computing in Star Trek which they often just get so wrong, such as when Spock asks the computer to compute the last digit of π to force Jack-the-Ripper to remove his consciousness from the ship's computers.

Too many episodes end with Kirk convincing a computer or robot to destroy itself. I'd like to see him try that with Siri. In one such episode "The Ultimate Computer", a new computer is installed in the Enterprise that replaces most of the crew. A conversation between Kirk and McCoy sounds familiar to many we have today (source).

MCCOY: Did you see the love light in Spock's eyes? The right computer finally came along. What's the matter, Jim?
KIRK: I think that thing is wrong, and I don't know why.
MCCOY: I think it's wrong, too, replacing men with mindless machines.
KIRK: I don't mean that. I'm getting a Red Alert right here. (the back of his head) That thing is dangerous. I feel. (hesitates) Only a fool would stand in the way of progress, if this is progress. You have my psychological profiles. Am I afraid of losing my job to that computer?
MCCOY: Jim, we've all seen the advances of mechanisation. After all, Daystrom did design the computers that run this ship.
KIRK: Under human control.
MCCOY: We're all sorry for the other guy when he loses his job to a machine. When it comes to your job, that's different. And it always will be different.
KIRK: Am I afraid of losing command to a computer? Daystrom's right. I can do a lot of other things. Am I afraid of losing the prestige and the power that goes with being a starship captain? Is that why I'm fighting it? Am I that petty?
MCCOY: Jim, if you have the awareness to ask yourself that question, you don't need me to answer it for you. Why don't you ask James T. Kirk? He's a pretty honest guy.

Later in the episode the computer starts behaving badly and Kirk has to convince it to shut itself down. But what if the computer just did its job? Is that our real future: Ships that travel to stars controlled only by machine. Or are we already there?

Thursday, November 19, 2015

A Silly String Theorem

First a note on a serious theorem: Babai has posted a video (mp4, 1h 40 m, 653MB) of his first talk on his Graph Isomorphism algorithm.

I was giving a talk on the Kleene star operator (don't ask) and came across this cute little problem. Say a language L commutes if for all u,v in L, uv=vu.

Problem: 
Show that L commutes if and only if L is a subset of w* for some fixed string w.

Here w* is the set of strings consisting of zero or more concatenations of w with itself. The if case is easy, but I found the other direction pretty tricky and came up with an ugly proof. I found a cleaner proof in Seymour Ginsburg's 1966 textbook The Mathematical Theory of Context Free Languages which I present here.

⇐ If u=wi and v=wj then uv=vu=wi+j.

⇒ Trivial if L contains at most one string. Assume L contains at least two strings.

Proof by induction on the length of the shortest non-empty string v in L.

Base case: |v|=1
Suppose there is an x in L with x not in v*. Then x = vibz for b in Σ-{v}. Then the i+1st character of xv is b and the i+1st character of vx is v, contradicting xv=vx. So we can let w=v.

Inductive case: |v|=k>1.

Lemma 1: Let y=vru be in L (u might be empty). Then uv=vu.
Proof: Since yv=vy we have vruv=vvru=vrvu. So vu=uv.

Let x in L be a string not in v* (if no such x exists we can let w=v). Pick j maximum such that x=vjz with z not the empty string. By Lemma 1 we have zv=vz. Note |z| < |v| otherwise v is a prefix of z, contradicting the maximality of j.

Lemma 2: For all y in L we have yz=zy.
Proof: As before let y = vru. By Lemma 1, uv=vu
Since yx=xy we have vruvjz = vjzvru
vruvjz = vruzvj by swapping v's and z's.
vjzvru = zvruvj by swapping v's and z's, and v's and u's.
So we have  vruzvj = zvruvj
or yzvj = zyuj and thus yz=zy.

By Lemma 2, the set L∪{z} commutes. Since 0 < |z| < |v| by induction L∪{z} is a subset of w* for some w so L is a subset of w*.

Monday, November 16, 2015

Is the word Quantum being used properly by civilians? Understood by them? You know the answer.


I've seen the word `civilians' expanded in use from non-military to non-X for some X. Not sure I've ever seen `civilians' mean `people who don't do math stuff' until the title of todays post. Well, there is a first time for everything.

 I've blogged in the past about the use of the word Quantum (here) . The phrase Quantum Leap  means a BIG leap, where as Quantum stuff is small. Though, to be fair, the discovery (invention?) of Quantum Mechanics was a big leap. So maybe that IS proper use. The James Bond movie Quantum of Solace uses Quantum to mean small, the ONLY time I've seen Quantum used to mean small, so Kudos to the title of an absolutely awful movie. Commenters on my prior blog on the subject pointed out that the original meaning of
quantum was quantity or amount without regard to size of discreteness. I think using it that way now would be very rare.

I came across a theatre called Quantum Theatre. What is Quantum Theatre?  The following are actual quotes from their website.

Quantum artists mine all  kinds of non-traditional spaces for the sensory possibilities they offer when combined with creative design.

 We find it meaningful to place the audience and performer together, the moving parts inside the works.

 We want to move people with our experiements.

The shows run the gamut from those you thought you knew but now experience like never before, to shows that didn’t exist until their elements mixed in our laboratory.

 I came across this article in a place it didn't belong-- in the middle of an article about Google and NASA trying to build a quantum computer (see here.) This news might be exciting but the article was full of mistakes and bad-signs so I'm not to excited about it. Plus the reference to Quantum Theatre is just odd.

The BEST use of the word quantum that I've heard recently was in the episode The Ricks must be crazy of the excellent TV show Ricky and Morty:

The car is broken

Morty (a 14 year old): W-Whats wrong Rick? Is it the Quantum carburetor or something?

Rick (his grandfather, a brilliant scientist): Quantum carburetor? You can't just add a Sci-fi word to a car word and hope it means something.
W-what's wrong, Rick? Is it the quantum carburetor or something?

Read more at: http://transcripts.foreverdreaming.org/viewtopic.php?f=364&t=20185
W-what's wrong, Rick? Is it the quantum carburetor or something?

Read more at: http://transcripts.foreverdreaming.org/viewtopic.php?f=364&t=20185


Thursday, November 12, 2015

A Primer on Graph Isomorphism


I spent 14 years on the faculty at the University of Chicago. I know László Babai well, we collaborated on some of my best known work. I also know Ryerson 251, a room where I've seen hundreds of talks and given more than a few myself. So I could imagine the excitement in that room on Tuesday as Babai gave the most anticipated talk in the history of theoretical computer science, the first of several talks Babai is giving on his new algorithm for graph isomorphism [Video]. Gabriel Gaster extensively live tweeted the event. Jeremy Kun has some details. Update (12/14): Paper now posted.

For this post instead of doing a bad job trying to overview Babai's proof, I'll explain the graph isomorphism problem and why it is important in the complexity world.

Suppose we have two high schools, say HS North and HS South, each with 1000 students. Consider a diagram (or graph) containing a point for each student at HS North with lines between students who are facebook friends, and a similar diagram for HS South. Is there a 1-1 map from the students at HS North to the students at HS South so that these diagrams look identical? That's the graph isomorphism problem.

To determine whether these two graphs were isomorphic you could look at all the possible mappings between students, but that's 1000! or more than 4x102567 possible maps. There has long been known how to search a smaller number of possibilities, especially if we put some restrictions on the diagrams, but always exponential in n (the number of students) in the worst case. Ideally we'd like a polynomial-time algorithm and Babai gets very close, an algorithm that runs in time nlogkn time for some fixed k.

Graph Isomorphism is one of those few problems, like factoring, known to be in NP but not known to be in P or NP-complete. Graph non-isomorphism is the poster child for the class AM, the problems solved by a randomized verifier asking a single question to a powerful prover. Graph non-isomorphism in AM implies that Graph Isomorphism is not likely NP-complete and that under reasonable derandomization assumptions that Graph non-isomorphism is in NP. Kobler, Schöning and Toran wrote a whole book on the computational complexity issues of graph isomorphism.

Even small progress in graph isomorphism creates waves. At a theory conference in the late 80's a speaker caused a major stir when he casually mentioned he had a proof (he didn't) that Graph non-isomorphism was in NP. Babai's announced caused a huge tsunami and those of us who know him realize he wouldn't make such an announcement without being sure he has a proof. The talk put together a large number of ideas from combinatorics and graph theory. My impression is that those who saw the talk didn't leave convinced of the proof, but did feel Babai had found the pieces to make it work.

With Babai's breakthrough algorithm, the smart money says now that graph isomorphism sits in P. It took decades to get from quasipolynomial time to polynomial time for primality testing and the same time frame may be needed to get polynomial time for graph isomorphism. But it will likely happen and the complexity of graph isomorphism then gets a whole lot simpler.

A couple of thoughts: All the breakthrough results that I can remember were released as papers, ready to devour. This is the first result of this caliber I remember being announced as a talk.

Also we think of theory as a young person's game, most of the big breakthroughs coming from researchers early in their careers. Babai is 65, having just won the Knuth Prize for his lifetime work on interactive proofs, group algorithms and communication complexity. Babai uses his extensive knowledge of combinatorics and group theory to get his algorithm. No young researcher could have had the knowledge base or maturity to be able to put the pieces together the way that Babai did.

More on Babai and graph isomorphism from Scott, Luca, Bill, Tim, Dick and Ken, Reddit, Science News, New Scientist and Science.