You've been with the professors
And they've all liked your looks
With great lawyers you have
Discussed lepers and crooks
You've been through all of
F. Scott Fitzgerald's books
You're very well read
It's well known
But something is happening here
And you don't know what it is
Do you, Mister Jones?
Ballard of a Thin Man, Bob Dylan, 1965.
It has been a while since I wrote here :) Now I have a bit of time
and a lot of ideas so time to dump one here :)
I'll write (once more) about AI and scientific research.
Earlier I talked
about Knuth's experience report using Claude (see
Knuth's Claude's Cycles bellow).
On LinkedIn I also posted a few thoughts on the matter,
for example, I
proposed a new track for conferences called "AI co-authored"
for papers that make
heavy use of AI in their production, regardless
of its phase: proof-reading, idea generation, idea testing, etc.
Now I want to talk about what has been called
auto-science, vibe-math
and so on. It has gained traction, probably because users of AI systems
are producing proofs in Lean, a proof assistant that is fairly recent,
the first version was released in 2013 while other proof assistants
had been around for much longer, e.g. Coq (now Rocq) has been around
since 1989. With the backing of tech giants like Microsoft and Amazon,
Lean nowadays dominate the
vibe-coding proving market.
So, what do I understand by
auto-science? I call
auto-science
to the following process: A human (or AI agent) proposes a theoretical
problem (CS or math) to an AI agent. The agent works the problem and
produces a proof or counter-example. To me, for this process to be
strictly called
auto-science the human must trust the agent's
output to be right (hence the necessity that it must produce a proof
or a counter-example). If the human needs to review the agent's output
then I would call it
AI-assisted-science. It is clear that in
both cases (
auto-science and
AI-assisted-science) the
AI agent lifts the greatest weight. Now, let's get into it shall we?
The academic context
If you publish papers probably you work at a university, perhaps as
a professor (in any kind of flavor) a post-doc or a PhD student;
I do not consider master and bachelor students because many of them
do not get paid for publishing.
Publishing papers shows you are at the top of the chain.
It also means you depend on publishing for the greatest part.
This is no secret, it is common that a post-doc or professorship
position requiring something like
strong publication record.
Or if you are looking for a PhD you may see something like
our group has a solid track record at top venues like...
The publishing dependency is on two dimensions, the first is the publication
output itself and the second the impact it has on
the community.
It is not enough to publish, your papers must have readers, similar
to online social media content creators: the more views and
reactions with their content, the more they get paid.
In a social media post, tracking reactions and views is conceptually
trivial, you just need a couple of atomic counters.
For papers that's a bit different, it doesn't just matter that your
paper is cited it also matters who cite it; still we can draw a parallel
with online social media, it is not the same to be reposted by a random person
than by a celebrity.
The average paper builds upon existing knowledge and does so following
the broad structure:
we study problem X, also
studied by [A,B,C..] with the lenses developed by [Z].
Ideally every claim in a paper must be able to be traced back following
the references (up to honest paper availability).
This check is 'relatively easy' I have done it since my bachelor days
and I was not a particularly bright student, so, most students should
be able to do it reasonably well.
For the most part, for an academic, their publications is their reputation
and that has a direct impact on employment security and growth opportunities.
The tech context
Thanks to Claude now I can work on a small domain-specific language
for CGR (see
Undusting CGR in the Random CS section if you want
to learn what CGR is).
That was always the main goal of CGR, to have a language resembling
SETL but specialized for computational geometry.
However, I have always been super lazy to write parsers and lexers,
those two just fill me with stress instead of joy, so I avoid them
for the most part.
With Claude I was able to obtain a parser and a lexer for a prototype
DSL in Objective-C; that is pretty cool.
I gave Claude a few examples, this is one of them:
List<Vertex> convex_hull:(graph) g
{
List<Vertex> CH <- [];
Vertex P0 <- g.lowestLeftmostVertex;
List<Vertex> V <- g.sortRadiallyWRT(P0);
for Vertex v in V:
while |CH| > 1 && g.turn(CH[1],CH[0],v) = g.LEFT_TURN:
CH.pop()
CH.push(v);
return CH;
}
The convex_hull function calculates the convex hull of
the vertex set of the geometic graph g.
The idea is that a com(trans)piler takes this program and produces
an Objective-C program linked to CGR's library and then the Objective-C
compiler produce an executable program.
If the program is run and an input graph is given, then the program
calculates the convex hull of the graph.
Now, take any book or any paper on AI that you want and implement
what you find in there. If you would like to start from scratch,
you could start by implementing a neural network.
Soon enough you will realize that you now need two inputs: the
network weights and the
prompt.
If you have no
network weights, you just have a few lines of code that
will give you either constant answers to all your
prompts or
random answers every time.
So, you don't only need the problem (
prompt) but also you
require to provide a computing context (
network weights).
The problems are easy to come by, the computing context not so much.
It starts with a
training data that is transformed to vectors
of numbers and those vectors are used to define the network weights.
Without the training data, it is almost sure that you have an useless
program. So, let's assume you have training data that is successfully
translated into network weights that yield a
good performing
network. This means that the network can reasonably generalize (provide
good approximations for the problem context).
With this in mind, let me propose the
Programming Poet hypothesis:
If a network
is solely trained on poems the probability that it writes correct
computer programs for any algorithmic problem in any programming language is 0.
If the Programming Poet hypothesis is true, then to obtain good results
in any field, the network must be trained on material relevant to the
field (no, it doesn't count that you regard your favorite proof as
a beautiful poem!). Then, let us assume that we have access to
a network trained on all the CS (math) papers published from 1980 to date and call it The Oracle.
Why did I choose 1980? well, because if you started to publish when
you were around 20 years old and your first paper was published in
1980, then by now your employment problems should be non-existent and
your reputation well-established, so you don't need to produce novel
results (please note that I talk about the need not the ability).
The experiment
Now the fun part, the experiment.
Let us assume that all academics have access to
The Oracle all
can question it and read its answers.
At this point the playing field is leveled: all academics have access
to the same network; what will set them apart is the questions they
ask, the prompts.
If an academic asks a prompt the network was trained on, the answer
must be close to the ground-truth.
If an academic asks a prompt the network was not trained on, the
answer is expected to be somewhat reasonable.
If The Oracle can generalize, then it is reasonable to assume it will
produce new results.
To check The Oracle's work, we must rely on the academic's factual
knowledge: for the academic the problem could be novel, maybe unaware
that someone else has already solved it or considered it, without
any means to track The Oracle's work, from the
academic's point of view, the answer is novel, The Oracle is producing
novel results.
There are famous problems everyone 'knows' or know they exist, for those
problems there is much training data: different approaches, sub-results,
related problems, etc. Again an academic prompting these problems and
getting a good result could reasonably conclude the network is producing
new results, again the answer is novel.
But is it? if the academic prompted a problem already in the training
data, by definition the problem is not novel.
If the academic prompted a problem
community regarded as
open and gets a good result then it must be checked for 'novelty'.
If the solution is actually novel, using insight no one has proposed
before or the solution is mix of already present sub-solutions
that no one had put together.
By academic standards mixing already present sub-solutions is considered
novel but not as novel as having an insight no one else has proposed.
Again, judging the output of The Oracle falls back to the academic's
factual knowledge base. Put into my bachelor's thesis adviser words:
"I do not know everything that is being published" and he is regarded
as a leading researcher in Computational Geometry.
Current models under-perform at tracing back their outputs to the
training data, we have seen a lot of problems with models fabricating
references: papers that do not exist.
This makes the evaluation of novelty a real headache because you can
not track the roots of the solution.
The fallback option: If the proof checks then call it solved and
move on.
As good as your last paper
If an academic's worth is in their reputation that comes from not only
published papers but their impact, what will happen if
we accept The Oracle's outputs and we can't trace back (without any doubts)
it's reasoning?
Well, the big winners are the ones that get the result first and
publish it first, because their names are the ones that will be
on the paper and headlines saying they solved, with AI, a long-standing
problem.
All the giant's shoulders upon which that solution stands will not
be fully known, because we can't trace back The Oracle's reasoning.
Furthermore, that paper will be part of the training set of The Oracle
and live as a standalone paper as long as someone remembers it, hence,
academics' reputation will be as good as their last paper.
We have already seen signs of this, it seems now that you broadcast
your Lean proof to claim the prize, then you can write the paper.
It is a race of prompts, a race of problems.
I suspect soon there will be databases of solved problems that you
can automatically cross-check to see if someone else has already
produced a Lean proof.
Lean has already moved in this direction with their ambition to
"Formalize CS".
We already have seen a massive surge of submitted papers to top
conferences and the pressure on peer-review is building up, if
even before this 'revolution' peer-review was under pressure,
these days it seems it is on the brink of breaking.
Perhaps escaping this race by a lateral move could explain why recently
I started to see colleagues calling for producing 'disposable proofs'.
A 'disposable proof' is defined as a proof that no one cares for
but that along with other 'disposable proofs' are generalized in a
'general theory'.
The idea is to find 'the shape' of the underlying mathematics.
So, say good-bye to your favorite equation in physics just because
there is something called 'general theory of relativity'.
I can't help but to see this as a profound lack of respect to the field,
rounding up results just to claim you have 'the global' view and then
dispose them.
Like if Kepler burned Tycho Brahe's observations after he derived his
laws of planetary motion.
Again, it seems to be about claiming the result as soon as possible,
and how the foundational data came to be? who cares, it grows on
(the ashes of) trees!
The AI Purge
By now, we are familiar with headlines like "The end of programming",
"The AI revolution", and many others full of optimism.
In his essay "The Fate of Empires" Sir John Glubb writes:
"... decadence is the disintegration of a system, not of its individual
members.
The habits of the members of the community have been corrupted by the
enjoyment of too much money and too much power for too long a period.
The result has been, in the framework of their national life, to make
them selfish and idle. A community of selfish and idle people declines,
internal quarrels develop in the division of its dwindling wealth,
and pessimism follows..." Are we heading towards a new dawn in science
or to its decline, towards the AI purge?
I believe the underlying goal of colleagues lobbying for 'disposable
auto-science' is to bump the complexity by gathering enough data current
models would struggle to interpret and interpret it in order to stay
relevant.
In the present context, as a problem, we can not deny it is relevant and novel,
moreover, it is a generalization of what experts in the field are
able to do (and do extremely well): literature review.
Any good literature review paper classifies papers in categories discussing
similarities and differences, spot open and partially addressed problems,
basically is step 0 when you want to do research at any serious level.
What sets apart your literature review when you are a student and one
published in a journal is the scope and the depth.
It is expected that an established expert provides a deeper and richer
insight than a beginner.
This seems to be a safe bet, you use your knowledge and skills to
classify many data points (results, proofs) into a coherent model
and then publish that model; of course you need the money first to
create those data points and that's where the university's/project's
budget comes into play, this however, isn't new to an academic.
This approach is a much, much safer bet than sitting down and try to come up with
a problem the model can not solve *and* that appeals to your peers.
By construction, the problems you find in your 'disposable proofs'
review, are open with respect to that model and hence relevant to
the current standards.
Someone would fill some holes and others will be regarded as
'irrelevant' following typical 'novelty/interesting' scientific canons.
But the interesting insight is that the drive of the proposal is to stay relevant
by spotting and plugging holes of a technology that would not
evolve beyond a hard threshold if we accept the Programming Poet hypothesis.
In short, we are heading towards a "selfish and idle" community.
I'm not saying these problems and analyses will be easy or trivial,
surely some will be quite challenging,
but if the Programming Poet hypothesis is true, then we are heading
to a stale; there is of course, the possibility that in the meantime
a breakthrough is made and we face new smarter models and we throw away
all the advances made so far or that the generalization of the observed
data gives way to a new insight that seed the current models and open
new "frontiers".
The stale state may not be reached in our generation but in the coming ones,
it appears that we are not that interested in the future generations
or in the pursuit of knowledge as a human endeavor because we are
focused on staying relevant with respect to artificial oracles
regardless of the cost.
That being said, it's hard to argue against sealing the holes in
current models, beyond the usual arguments of resource consumption
and accountability.
If only...
I love reading papers, I think there is something magical on how
science is communicated. I love reading them cover to cover, not only
the results and references.
Many times reading a paper has made me read a lot more just to verify
the claims :)
That being said, I wouldn't mind reading papers written by The Oracle if and only if
all the derived results could be tracked down to its roots.
That is the only way we can confidently judge the novelty of a paper.
If The Oracle could able to trace all results back to the training set
can you imagine the well of knowledge we could have access to?
I mean the well is there already in raw data and you should be able to
dive in it with Google but it lacks of the 'necessary' structure.
A paper's worth does not lay solely on its result but in its process.
If we can achieve effective, reliable explainable AI, then we would
see an increase in human-made scientific production because we would
be exposed to new thinking patterns that we could quickly incorporate
to our own, if we are flexible enough, that is.
If we can achieve effective, reliable explainable AI we could finally
unmask AI for what it is: a biased linear combination of previous data points
or marvel at its beautiful ability to create truly novel knowledge using
just linear equations.
So, yes, right now I think we are heading closer to a new dawn in science
after we experience and survive the AI purge; we shall stay optimist
as a species we have survived at least one, well documented, dark age.
Postscript
After I finished writing this entry as a draft, I head there was
a
drama around Open AI's Navier-Stokes counter-example.
Apparently a pair of researchers were using Open AI's public models
and made some progress.
Before publishing their results one wrote to Open AI, it seems,
before Open AI started to work on the problem.
In this kind of cases it is hard to establish a trustworthy timeline
so, it is hard to say with confidence what actually happened.
However, it is a real challenge to the imagination that a company that
built its welth around data would not mine its user's data.
A more detailed account of a similar ocurrence, this one involving a
couple of papers with humans in-the-loop was given by Suvrit Sra
on
LinkedIn.
Sra and his colleague wrote a paper that later was allegedly plagiarized
by another paper a little more than 15 days after.
The second paper was AI co-authored and according to Sra disregards
their contributions and plagiarize their work.
Once more, without any means to track down AI efforts back to its
training dataset it is impossible to prove, without any doubt, who
is to blame.
I have met my fair share of authors that had barely skimmed through
the papers they cite.
They'll stone ya when you're at the breakfast table
They'll stone ya when you are young and able
They'll stone ya when you're tryin' to make a buck
They'll stone ya and then they'll say, "good luck"
Tell ya what, I would not feel so all alone
Everybody must get stoned
Rainy Day Women #12 & 35, Bob Dylan, 1966.