Monday, April 15, 2024

Avi Wigderson is a counterexample to TWO stupid thoughts of G.H. Hardy

 Recently

1) Avi Wigderson won the Turing Award (See blog posts by Fortnow-here, Scott-here, Lipton-Regan here, and the ACM announcement here).  The last time I could find when Fortnow-Gasarch, Scott, Lipton-Regan all blogged on the same topic was when Goldwasser-Micali won the Turing Award- see the blog entries (here, here,here). We rarely coordinate. For that matter, even Fortnow and Gasarch rarely coordinate.

2) My joint book review of G.H. Hardy's  A Mathematician's Apology (1940) and L.N. Trefethen's An Applied Mathematician's Apology appeared in SIGACT News. 

These two events would seem unrelated. However, I criticize two points in Hardy's book; and those two points relate to Avi.  The book review is here

POINT ONE: Hardy says that Mathematics is a young man's game and that if you are over 40 then you are over the hill. He gives some fair example (Gauss, Newton) and some unfair ones (Galois, Ramanujan who died before they were 40.) Rather than STATE this fact he should have made it a CONJECTURE to be studied. I would make it two conjectures: 

Was it true for math that Hardy would know about? Since most people died younger in those days, there might be to small a sample size. Euler and Leibniz might be counterexamples.

Is it true now? AVI is clearly a counterexample. Other modern counterexamples: Michael Rabin, Leslie  Valiant, Roger Apery (proved zeta(3) irrational at the age of 62), Yitang Zhang (bounded gaps between primes at age 58, which, alas, is not a prime-- would have been really cool if it was a twin prime), Louis de Branges (proof of the Bieberbach conjecture at 51), Andre Weil, Jean-Pierre Serre. Is that enough people to disprove Hardy's conjecture? 

Despite the counterexamples I provided, we have all seen some mathematicians stop producing after a time. I offer two reasons for this

a) (Andrew Gleason told me this one) A mathematician works in a field, and the field dries up. Changing fields is hard since math has so much prereq knowledge.  CS has less of that problem. One can see if in the counterexamples above, and in other counterexamples, the fields they were in didn't dry up. 

b) The Peter Principle: Abosla is a great research so lets make her department chair!

My conjecture: The notion that math is a young mans game is false. 

POINT TWO: Applied Math is dull. Trefethan's book makes a good counter argument to this. I will say something else.

Even in Hardy's time he would have seen (if his head was not so far up his ass) that math, applied math, physics, compute science and perhaps other areas interact with each other. It is common to say that things done in pure math get applied. However, there are also cases where pure math uses a theorem from applied math. Or where Physics MOTIVATES a topic in pure or applied math. The boundaries are rather thin and none of these areas has the intellectual or moral high ground. There is the matter of personal taste, and if G.H. Hardy prefers pure math, that's fine for him. But he should not mistake his tastes for anything global. And is well known, he thought pure math like number theory would never apply to the real world. He was wrong about that of course. But also notice that Cryptography motivated work in number theory.  I am not sure if I would call AVI's work applied math,but it was certainty motivated by applied considerations.

Wednesday, April 10, 2024

Avi wins the Turing Award

The ACM announced that Avi Wigderson, a force in computational complexity and beyond, will receive the 2023 A. M. Turing Award (Quanta article). This is the first primarily complexity theorist to win the award since Andy Yao in 2000. Avi can add this to his AbelNevanlinna and Knuth prizes. Avi has served on the faculty at the Institute for Advanced Study since 1999 after many years at Hebrew University. He's hosted many postdocs and visiting faculty and students who've gone onto great careers of their own.

Avi is my first co-author to win the Turing award. Our paper was just one link in a chain of papers, from Nisan-Wigderson to Impagliazzo-Wigderson showing how circuit bounds yield derandomization. Philosophically these results tell us randomness is just computation we cannot predict.

But Avi did so much more. NP has zero-knowledge proofs. Zig-Zag expanders that led to Reingold's SL = L. Monotone circuit lower-bounds using communication complexity. Upper and lower bound for matchingOptimal Extractors. And that's just the tip of the iceberg. 

Notably none of these papers are solely authored or even have much overlap in their author lists. Avi shared his wisdom with many, nearly 200 distinct co-authors according to DBLP. 

Beyond his research, Avi has been a great advocate for our field, advocating to the NSF as a founding member of the SIGACT Committee for the Advancement for Theoretical Computer Science, and on the Simons Foundation scientific board which led to Simons Fellows and the Simons Institute. Avi wrote a book placing computational complexity as a great mathematical discipline that just also happens to have great applications in so many different fields.

Congrats to Avi and this capstone to an incredible career and individual. 

Tuesday, April 09, 2024

Rance Cleaveland passed away on March 27, 2024. He will be missed

 
My friend and colleague Rance Cleaveland passed away on March 27, 2024 at the age of 62.  He was a professor at The University of Maryland at College Park in the Computer Science Department. He worked in Software Engineering. He did program verification and model checking. He had his own company, so he did both theoretical and practical work.

He joined UMCP in 2005. I had known him and some of his work before then so we got together for lunch about once a month to talk about the department(he was new to the dept. so I filled him in on things) and about computer science.He would probably be considered a theorist in Europe, though he was considered a Software Engineer in America.

The department's announcement is here

Below is

 
1) A note from Rance's Grad student Peter Fontana, who got his PhD in 2014.

2) An email that Jeroen Keiren sent to the concurrency mailinglist.

3) A picture of Peter, Jeroen, and Rance in that order left to right. 

-------------------------------------------

Peter Fontana's Note:

PERSONAL:

I’m truly shocked and saddened to hear that Rance Cleaveland passed away. Rance advised me (as a Ph.D. student of his at UMCP) in model checking (also called formal verification).

Rance was an extremely kind advisor and extremely skilled in leadership and communication. He also had all of the swiftness, communication, and people understanding of a skilled manager. He always encouraged us to find the simplest example possible to illustrate a nuanced corner-case of a property we wanted to prove or disprove. The simplicity made complicated things clearer. He was also an extremely clear communicator and extremely skilled with people. Rance was always patient and kind, eager to guide rather than to chastise.  I will truly miss him.

COMPUTER SCIENCE

Model checking involves the following:

(1) abstracting a programs as a state machine (automaton) with labels,

(2) writing a desirable property (such as “bad event X will never happen”) as a formula in a logic,

(3) using a computer to automatically show (over all possible cases) that the specified property is true or false.  This is model checking.

Theorists will note that this process of model checking is asking if state q of a machine satisfy a property phi, which is the model checking problem. If you are in the world of boolean formulas and propositions, the NP-complete satisfiability problem (SAT) asks: does there exists a boolean assignment q that s satisfy formula \phi? The analogous model checking problem is: given boolean assignment q (each proposition is either T or F), does q satisfy \phi? For boolean assignments, the model-checking problem is in P.

While Rance worked in a variety of areas related to formal verification that spanned process algebras, different logics, different automata types, and cyber-physical systems, with me we improved the art of timed automata model checking using a timed modal-mu calculus (timed logic). Timed automata and timed logics extend state machines by introducing a finite number of clocks. These clocks all advance (like time advancing) and can reset, and timed logics now have timing constraints (“within T time” is the most common constraint). We worked on extending the state of the art of what we could model-check on timed automata, both with theoretical proofs and by implementing a model checker (in C++) to model-check these richer timed properties. It turns out that this model checking work is decidable (model checking the simplest formulas in timed automata was previously shown to be PSPACE HARD).  I inherited work started by others, enhanced it, and passed it on; that work is currently being enhanced by others today. Our approach was novel in that we used a proof system of predicates and were able to model check more expressive formulas on timed automata with this enhanced system (See this paper). For details see my PhD thesis here.

----------------------------------------------------------------------------------------------

Jeroen Keiren's message to the concurrency mailinglist

Dear colleagues,

It is with great sadness that I share the news of the sudden and unexpected passing of
our colleague Rance Cleaveland on 27 March 2024.

My thoughts are with his family, friends and loved ones during this sad time.

I am convinced that those of us that interacted with Rance throughout his career will remember him as a friendly person. He was always happy to discuss research, but also dwell on more personal topics or give his honest, yet in my experience always constructive, advice.

Rance obtained his PhD at Cornell, and held academic positions at Sussex, NC State and Stony Brook, before accepting his current position at the University of Maryland, College Park in 2005. UMD shared an obituary for Rance here.

Rance was not only interested in the theoretical foundations of our field, witnessed by over 150 scientific publications. He also had a strong focus on building the tools (for instance the Concurrency Workbench), and commercializing it (through his company Reactis).

Rance was also an active member of our community. He was one of the co-founders of TACAS, for which he was still serving on the steering committee, as well as one of the co-founders of the Springer journal Software Tools for Technology Transfer.

In the words of his wife “For Rance, the concurrency community was truly his intellectual home and he appreciated working with colleagues in Europe and the US - and around the world.”

I’m sorry to bring this news.

With kind regards,

Jeroen Keiren
Assistant professor, Formal System Analysis group
Eindhoven University of Technology, The Netherlands

------------------------------------

A Picture of Peter, Jeroen, and Rance, left to right:





Wednesday, April 03, 2024

Answer to Question. MetaQuestion remains unsolved

 In a prior post I asked the following question:


find x,y,z positive natural numbers such that the following is true:


$$ \frac{x}{y+z} + \frac{y}{x+z} + \frac{z}{x+y} = 4. $$

I first saw the question in a more fun way:



I did not put the answer in the post (should I have? That was the meta question.)

The question has an infinite number of (x,y,z) that work, so I'll just give the least one:



x= 154476802108746166441951315019919837485664325669565431700026634898253202035277999


y = 36875131794129999827197811565225474825492979968971970996283137471637224634055579


z = 4373612677928697257861252602371390152816537558161613618621437993378423467772036


1) For details on how you could have found the answer see here. Or watch a YouTube video on it here.

2) Did I really expect my readers to get this one? Note that I posted it on April Fools Day, though it is a legit problem with a legit answer.

3) The image that says that 95% of all people couldn't solve it---I wonder what their sample size was and where it was drawn from. I suspect that among mathematicians 99% or more can't solve it. 

4)  Comments on the comments I got:

a) Austin Buchanan says that Wolfram Alpha says NO SOLUTION. I wonder if Wolfram Alpha cannot handle numbers of this size.

b) Anonymous right after Austin had a comment that I MISREAD as saying that they found it using a python program. I asked that person to email me, and it turns out that NO-- they recalled where to look (on the web I assume).

c) Several commenters solved it by  looking at the web. Math Overflow and Quora had solutions. So did other places. This may make the meta question should a blogger post the solution a moot point for a well known problem. If you get a problem off the web its quite likely its well known, or at least well enough known, to have the answer also on the web. If you make up a problem yourself then its harder to tell.

5) I think its a very hard problem to solve unless you have the prior KNOWLEDGE to solve it, so it would not be a good math competition problem. 

6) The cute pictures of fruit in the presentation of the problem makes it LOOK like its a cute problem. It not. 

7) Only one comment on the meta question about should a blogger post the solution at the same time as the problem  (There were more comments about the unimportant question of whether 0 is a natural number.) The one comment says that a blogger SHOULD NOT - let the reader enjoy/agonize for a while. I agree.

8) Determining if a given math problem is interesting is a hard problem; however, that will be a topic for another blog. (Tip for young bloggers, if there are any (blogs are so 2010):  If you do ONE idea per blog then your blog can last longer.)





Monday, April 01, 2024

A Math Question and a Meta Question

 1) Question: find x,y,z natural numbers such that the following is true:


$$ \frac{x}{y+z} + \frac{y}{x+z} + \frac{z}{x+y} = 4. $$

I was first presented the problem a more fun way:


(NOTE- a commenter pointed out that ``Natural Numbers'' and `Positive Whole Values' are different since some people (and I AM one of them) include 0 as a natural. SO- to clarify, I want x and y and z to be naturals that are \(\ge 1\). )

2) Meta Question: When a blogger poses a question like that should they also post the answer? Have a pointer to the answer? Not have an answer? Pros and Cons:

a) If you do not list the answer at all (or post it in a few days) then people will not be tempted to look at the answer. They have to really work on it. (Maybe they can find the answer on the web). 

b) There are people whose curiosity far exceeds their ego. So they want to work on in for (say) 5 minutes and then LOOK AT THE ANSWER! I am one of those people. 

c) When you first look at a problem and work on it you are curious. If you have to wait a few days to get the answer then you may lose interest. 

I invite you to work on both the question and the meta question.  I will not be blocking people who post the answer in the comments, so if you want to work on it you might not want to look at the answers.

I will post the answer in a few days. 



Wednesday, March 27, 2024

The Softening of Computing Jobs: Blip or Trend?

Tech companies are performing exceptionally well, driving the S&P 500 to new heights with their soaring stock prices. However, the tech sector, apart from AI, expects a job decline to persist throughout the year, accompanied by a tougher hiring process. The situation becomes even more challenging for foreign students requiring sponsorship to secure a job after college, or older tech workers without the latest skills.

Despite these challenges, tech jobs remain more abundant than in most other fields, although the era of immediate employment with nearly six-figure salaries straight out of college with any CS degree has ended.

In discussions with industry leaders, I encounter varied perspectives on whether these changes represent a temporary fluctuation or a long-term trend. Let's explore some of the reasons for this 

The Elon Effect

Since Elon Musk took over Twitter in the fall of 2022, he cut about 80% of the employees. The platform had some hiccups but didn't fall apart. You might not like what is now called X became but technically it still functions pretty well. Many other companies started looking at their workforce and starting thinking whether they needed all the software develops they've hired.

Over Supply

We've seen tremendous layoffs among the larger tech companies, paring down from over hiring during the pandemic, and massive growth of computer science programs at universities across the country and world. We just have too many job searchers going after too few tech jobs.

Uncertainty

Companies hold back hiring in the face of uncertainty. Uncertainty in elections in the US and abroad, international relations particularly with China, regulatory and legal landscapes, wars, interest rates, and the economy. 

Artificial Intelligence

Almost everyone I talk to thinks (wrongly) that their careers will not dramatically change with AI, except for programmers where we already see significant productivity improvements with ML tools like Github co-pilot. So many companies are re-assessing how many software developers they need. AI also adds to the uncertainly as the tools continue to improve, but how much and how fast remain difficult to predict. 

Blip or Trend?

The supply will balance itself out in the future, though possibly through a drop in the number of CS majors. The world will get more certain, hopefully in a good way. But how AI will affect the tech (and every other) job will take years if not decades to play out.

So what advice for those looking for tech jobs: build skills, get certificates, perhaps a Masters to wait out the job market, learn AI both as a skill in demand but also to make yourself more productive. Be aggressive (but not too aggressive), network, enter competitions, build a portfolio. The jobs are not as plentiful but they are out there. 

Monday, March 25, 2024

I know what A-B-C-D-F mean but what about V? X? HP?

 I am looking at LOTS of transcript of students who applied for my program REU-CAAR so I sometimes come across grades that I don't understand. The transcript does not have a guide to them, and I have been unable to find the meaning on line.

Normal grades of A,B,C,D,F possibly with + or - I DO understand, as do you, though standards differ from school to school.

UMCP also has 

P for Pass in a course the student chose to take Pass-Fail

W for withdrawing from a course

WW which will be on all courses in a semester- so the student dropped out that semester 

XF means failed because you cheated. I suspect people outside of UMCP would not know that, though the `F' part looks bad. 

NG seems to mean they placed out of the course somehow. Might stand for No Grade. 

I've seen

V at Georgia Tech. Lance told me that means the student audited the course. 

Q at University of  Texas at Austin.I do not know that means. 

X at Depauw. I do not know what that means.

HP at Harvey Mudd. I do not know what that means.

WV at Harvey Mudd. I suspect some kind of withdrawal but I don't know. 

SX at Cornell. I do not know what that means.

E is used at some schools for FAIL and at other schools for EXCELLENT

Some schools in India use O for Outstanding- higher than an A. 

Fortunately it is rare that I NEED to know a grade that has a letter I don't understand the meaning of. However, another problem is names of courses. 

Analysis could mean Calculus with or without proofs, one or many variables. 

Discrete Math could mean an easy course on how to proof simple thing or a hard course in combinatorics. Often I can tell if its a Freshman, Sophomore, Junior, or Senior course so that may help tell what it is. 

Foundations could mean... a lot of things. 

So what can be done? The only thing I can think of is to have schools include a legend on their transcripts that tells what each grade means. Why hasn't this already been done? Speculation

a) Harder than it seems to do.

b) Not really an important problem (this blog is the only time I've every seen it mentioned)

There may be some tradeoff between how easy something is to do and how important a problem is to solve in order to take action. And this problem does not reach that threshold.

This would seem to be a problem for admissions to grad school as well, yet I have not heard of people complaining about it there either.



Wednesday, March 20, 2024

Can you feel the machine?

In the recent academy award winning movie Oppenheimer, Niels Bohr tests a young Oppenheimer.
Bohr: Algebra's like sheet music, the important thing isn't can you read music, it's can you hear it. Can you hear the music, Robert?
Oppenheimer: Yes, I can.

I can't hear the algebra but I feel the machine. 

A Turing machine has a formal mathematical definition but that's not how I think of it. When I write code, or prove a theorem involving computation, I feel the machine processing step by step. I don't really visualize or hear the machine, but it sings to me, I feel it humming along, updating variables, looping, branching, searching until it arrives at its final destination and gives us an answer. I know computers don't physically work exactly this way, but that doesn't stop my metaphorical machine from its manipulations.

I felt this way since I first started programming in Basic in the 1970's, or maybe even before that on calculators or using the phone or sending a letter. I could feel the process moving along.

So when I took my first CS theory class, I could feel those finite automata moving along states and the PDAs pushing and popping. I even felt the languages pumping. After graduate complexity, I knew I found my calling.

And that's why I prefer Kolmogorov Complexity arguments more than information theory. Information doesn't sing to me but I can see the compression.

As computational complexity evolved, focusing more on combinatorics, algebra and analysis, and often on models that have little to do with computation, I sometimes find myself lost amongst the static math. But give me a Turing machine and I can compute anything!