On the birth of a (small) theorem

On inequalities and such

I have a conjecture. It’s really not that big of a deal. It came out in the process of trying to solve another problem entirely, and it was the result of the most simple and inane numerical simulation known to humanity. When I told another researcher about it, he asked me “Does anyone care about this?” I wasn’t sure about it, and nodded in the negative. He excused himself politely.

I then asked a senior researcher about it. Perhaps to be polite, he said “this seems interesting”. With the delulu is the solulu of “maybe he isn’t just being polite”, I set off to try and prove it. Except that I had no idea how.

I spent a month or two reading random papers way outside of my field, not understanding much, and worrying about how my career was going to tank if I didn’t prove it. It did not occur to me that people might not be interested even if I was able to prove it.

Conjecture turns out to be wrong

While trying to prove the base case, I kept running into difficulties. I realized that there may be a problem with the conjecture. On running some more calculations, I realized that there were counter-examples to some of the formulas that I had predicted. It was late in the night when I realized this. I had no idea how I slept. However, I woke up at 6 am, and wrote an email to my advisor that the conjectures were wrong. It took heroic effort to do so. It felt like strangling my newborn. With my bare hands. This, for formulas probably nobody cared about.

On buses, trains and planes

Worrying about things is not always productive. I have experienced this first-hand. I would keep running Mathematica simulations on the conjecture, day in and out. I remember a particularly harrowing moment, when I probably mistyped something in Mathematica, and the plot I got seemed to disprove my conjecture. I could feel my heart sinking to the bottom of my frame. I was cold and struck dumb. Nothing mattered. I re-ran the simulation, and now it gave me a different plot, seemingly supporting my conjecture. But I wasn’t convinced. I needed to know for sure. I ran it 7 more times. Only then did I begin to breathe normally again.

I was also particularly depressed one weekend. Something that was running in the back of my mind was that some plots, which should be positive at some points according my conjecture, were turning out to be all negative. However, on running very very precise simulations, I realized that all of those plots, for very, very short durations, were indeed positive. To give you an idea of scale, each graph was positive in an interval of length 10^{-50} or smaller. It was truly incredible to me. I couldn’t end up thinking that my conjecture had to be true for like…divine reasons. I was so happy, I bought an expensive tiramisu and forced my complaining friend to try some. We were both disappointed.

On avoiding all other work

I have lots of pending work. In fact, I helped (somewhat) crack an interesting conjecture in combinatorics with a professor, and should be working on that. I have pending projects with two other professors, and two other postdocs. I have an ongoing project with my PhD advisor. I don’t feel like doing any of those. I only feel like banging my head against the wall, marinating in my own conjecture. Why? Because it is perhaps the only thing in the world that is mine. Even if no one cares about it, I am always going to remember how I started not knowing how to solve it, and then ended up solving it. It is going to be a high point in my life if I ever end up proving it.

If someone else proves my conjecture before me, I am going to write them fiery condemnations, perhaps religious, and accuse them of blatant racism and sexism. Even if they were a fellow bad-looking Indian man.

On DeepMind’s recent paper on discovering new mathematics

Given below is a record of my failed attempt to replicate DeepMind’s recent mathematical breakthrough. This is mostly because I could not find the code for the funsearch module on their GitHub repository. If you’re someone who could help me with this, I’d surely love to hear from you.

Introduction

It is well known that determining whether a given mathematical argument is correct is much easier than producing a correct mathematical argument. Similarly, it is much more difficult to produce examples of mathematical concepts than to verify that a given object is a valid example of the mathematical concept under consideration. DeepMind, in its recent paper, leverages this observation to produce programs that may find examples of mathematical objects, and then a separate “evaluator” to determine whether those indeed are valid examples. Examinee and examiner all rolled into one.

Why LLMs?

Note that training a neural network to produce a correct example of a mathematical concept is also possible. However, acquiring the requisite hardware and re-training a neural network for every specific purpose can be expensive and time consuming. An LLM is perhaps a “generalist neural network” in some sense, in that it has been trained on a sizable fraction of the internet. It can now be fine tuned a little bit to achieve our purpose.

How can a program solve a mathematical problem?

Normally, you’d think we need a machine that can write mathematical proofs. Or perhaps a neural network that does something magical in its formidable black box and comes up with a mind-bending example that mathematicians have failed at conjuring for decades. However, a program can also come up with examples. Simplistically speaking, it can list all elements of a well-defined set, and then check whether any of them are examples of the object we are looking for. In some sense, it is their computational speed and accuracy that make programs good at coming up with examples.

So do we provide the program, and the LLM just runs it?

No, we don’t even know the correct program to run at the beginning. We provide the LLM with a very basic program, and then ask it to iteratively improve it through “evolution”. We discard the bad programs, and ask the LLM to further improve the good ones. In order to narrow the search space, we ask the LLM to only evolve the “priority function” part of the program, and leave everything else the same. The priority function is the function that makes the decision at every step.

An example would be: imagine a sailor lost at sea, on a lifeboat with paddles. Every day, based on the position of the stars, perhaps the direction of the wind, etc, they have to decide in which direction to paddle. This decision is carried out by the priority function of the sailor, which is perhaps their brain. The LLM is asked to iteratively give the sailor a better and better brain, until they can make the really decisions every day, and see landfall. Everything else that is inconsequential about the sailor, like their clothes, their gender, etc is left the same.

So is the output the example that we’re looking for?

No, it is a program that gives us the example. In this way, we can perhaps tweak the program, and generate even more complex examples. It’s akin to a mathematician stating that a conjecture is true, versus them publishing their proof, which can lead to other mathematicians modifying their proof to prove other impressive things.

Consider the following diagram:

First, we specify the task that the LLM is supposed to accomplish, like “find an example of the cap set problem”. Then a program, called “prompt” here, is fed into the LLM. The LLM provides three programs that are supposedly an improvement on the input program. However, only one of them is actually correct. This correct program is then stored in a programs database. The programs in the database are then passed into the LLM to further improve them. The LLM may take a correct program as an input, and incorrect evolve it to give us an incorrect output program. Hence, we again run tests to see which of them are correct, and so on.

Specification

So what is the code that is run?

I found the Jupyter notebook file from DeepMind’s GitHub page.

The first boilerplate input program is

"""Finds large cap sets."""
import itertools
import numpy as np


# @funsearch.run
def evaluate(n: int) -> int:
"""Returns the size of an `n`-dimensional cap set."""
capset = solve(n)
return len(capset)


def solve(n: int) -> np.ndarray:
"""Returns a large cap set in `n` dimensions."""
all_vectors = np.array(list(itertools.product((0, 1, 2), repeat=n)), dtype=np.int32)

# Powers in decreasing order for compatibility with `itertools.product`, so
# that the relationship `i = all_vectors[i] @ powers` holds for all `i`.
powers = 3 ** np.arange(n - 1, -1, -1)

# Precompute all priorities.
priorities = np.array([priority(tuple(vector), n) for vector in all_vectors])

# Build `capset` greedily, using priorities for prioritization.
capset = np.empty(shape=(0, n), dtype=np.int32)
while np.any(priorities != -np.inf):
# Add a vector with maximum priority to `capset`, and set priorities of
# invalidated vectors to `-inf`, so that they never get selected.
max_index = np.argmax(priorities)
vector = all_vectors[None, max_index] # [1, n]
blocking = np.einsum('cn,n->c', (- capset - vector) % 3, powers) # [C]
priorities[blocking] = -np.inf
priorities[max_index] = -np.inf
capset = np.concatenate([capset, vector], axis=0)

return capset


# @funsearch.evolve
def priority(el: tuple[int, ...], n: int) -> float:
"""Returns the priority with which we want to add `element` to the cap set."""
return 0.0

This program was clearly not good. For example, in nine dimensions, the largest cap set that the program found contains 512 elements, when it is known that the largest such cap set actually contains 1082 elements.

FunSearch then discovered the following program:

def priority(el: tuple[int, ...], n: int) -> float:
score = n
in_el = 0
el_count = el.count(0)

if el_count == 0:
score += n ** 2
if el[1] == el[-1]:
score *= 1.5
if el[2] == el[-2]:
score *= 1.5
if el[3] == el[-3]:
score *= 1.5
else:
if el[1] == el[-1]:
score *= 0.5
if el[2] == el[-2]:
score *= 0.5

for e in el:
if e == 0:
if in_el == 0:
score *= n * 0.5
elif in_el == el_count - 1:
score *= 0.5
else:
score *= n * 0.5 ** in_el
in_el += 1
else:
score += 1

if el[1] == el[-1]:
score *= 1.5
if el[2] == el[-2]:
score *= 1.5

return score


# We call the `solve` function instead of `evaluate` so that we get access to
# the cap set itself (rather than just its size), for verification and
# inspection purposes.
cap_set_n8 = solve(8)
assert cap_set_n8.shape == (512, 8)

In 8 dimensions, it discovered a cap set containing 512 elements. Before this, the largest known cap set in 8 dimensions contained 496 elements. But how does one verify that the discovered cap set is indeed correct? The following function was used to verify this:

def is_cap_set(vectors: np.ndarray) -> bool:
"""Returns whether `vectors` form a valid cap set.

Checking the cap set property naively takes O(c^3 n) time, where c is the size
of the cap set. This function implements a faster check that runs in O(c^2 n).

Args:
vectors: [c, n] array containing c n-dimensional vectors over {0, 1, 2}.
"""
_, n = vectors.shape

# Convert `vectors` elements into raveled indices (numbers in [0, 3^n) ).
powers = np.array([3 ** j for j in range(n - 1, -1, -1)], dtype=int) # [n]
raveled = np.einsum('in,n->i', vectors, powers) # [c]

# Starting from the empty set, we iterate through `vectors` one by one and at
# each step check that the vector can be inserted into the set without
# violating the defining property of cap set. To make this check fast we
# maintain a vector `is_blocked` indicating for each element of Z_3^n whether
# that element can be inserted into the growing set without violating the cap
# set property.
is_blocked = np.full(shape=3 ** n, fill_value=False, dtype=bool)
for i, (new_vector, new_index) in enumerate(zip(vectors, raveled)):
if is_blocked[new_index]:
return False # Inserting the i-th element violated the cap set property.
if i >= 1:
# Update which elements are blocked after the insertion of `new_vector`.
blocking = np.einsum(
'nk,k->n',
(- vectors[:i, :] - new_vector[None, :]) % 3, powers)
is_blocked[blocking] = True
is_blocked[new_index] = True # In case `vectors` contains duplicates.
return True # All elements inserted without violating the cap set property.


assert is_cap_set(cap_set_n8)

But how does FunSearch evolve the algorithm? What is the code for that?

It is given in the same GitHub profile. The details of the LLM are not given. We can perhaps try and run it in ChatGPT.

What is the evolutionary method?

Choose a bunch of initial programs, and evolve them separately. Evaluate each evolved program, and assign them a score (perhaps +1 for giving the correct answer for each input?). Trash the programs with the lowest scores, and place the best programs within the newly emptied islands. Keep repeating until termination. I suppose that on average, the islands with the best programs will survive.

This is like evolution in which God swoops in to strike dead all the unfit mutations, instead of a slow death that nature wreaks upon unfit species.

What are the program clusters and islands here?

In the process of evolution, each program gives rise to multiple mutated programs. Classify these progeny into clusters within an island. Sample clusters to see which clusters contain the better programs. Now within each “good” cluster, choose the shorter programs. Use this program as an input into the LLM to produce an output program. If correct, this output program should be added to an existing cluster. Note that in this process, clusters are not emptied, but only evolved.

Correct folder for packages in Mathematica

Something that I often struggle with is uploading packages in the right directory, that can be accessed by Mathematica. Here, I am documenting the process of doing this correctly, so that I can keep coming back to it when I get this error in the future.

For example, I have downloaded the package Ricci on to my computer. However, when I try to call the package on Mathematica, it gives me an error message:

What ended up working is the following: I used the SystemOpen[$UserBaseDirectory] command in Mathematica, which opened the folder that Mathematica can access. Within this folder, there is an Applications folder, within which I placed the Ricci package that I had downloaded.

Now, on using the <<Ricci` command, I get the following output:

What actually worked

Things I would think would work:

  1. If I somehow miraculously became smarter overnight, mathematical concepts would become easier to understand. Numbers and equations would just materialize around me in the ether, or perhaps appear scrawled on nondescript windowpanes in my vicinity.
  2. If I understood unrelated fields of Mathematics, I would start understanding the “structure” of the whole thing.
  3. My current method of learning was the best way to learn Mathematics. If I stick with it for some time, fields that I did not understand before would somehow become crystal clear.
  4. If I understood lots of advanced Physics, then Mathematics would appear motivated and clear.

What actually worked:

  1. Keep at it. Keep thinking about the problem, ignoring everything else. If you start thinking about it early in the morning and don’t give up, something magical happens late at night, and the solution that you’ve been inching towards becomes clear all of a sudden.
  2. Understanding will happen eventually. Research and discovery must precede understanding.

On getting nerdswiped

I used to often worry about the fact that I was never really focused on a research problem. I would hear about researchers making amazing discoveries after single-mindedly pursuing their goal for months and years, and I would often think that that would never be me. Instead of focusing on one thing, I would pursue whatever struck me as interesting in the moment, and of course that wouldn’t last very long.

I have spent the last month or so, however, obsessing on a problem that my advisor gave me. I wasn’t on a deadline. I wasn’t even expected to solve the problem. We both agreed that I should focus on a simpler problem for my thesis. However, I somehow started spending all my time on it.

Over the last week, it has gotten to the point where I have trouble sleeping because of it. I go to sleep thinking about it, and wake up early in the morning still thinking about it. When I try to distract myself by reading a book or watching something on Netflix, I find myself returning to it within minutes.

It would be interesting to introspect on why I was particularly nerdswiped by this problem, and whether this insight can be harnessed to generate interest in other problems in the future. Some reasons that I could think of:

  1. I was making progress on the problem. When I tried this problem in the past, I was making no progress, and was not even sure that I had the right “picture” in mind as to what was happening. However, this time we had a pretty good idea of what was happening. I knew that I “had it in the bag”. Perhaps this motivated me to push harder.
  2. More importantly, my advisor’s insight into what the solution should “look like” considerably narrowed the solution space for me. After that, it was mostly about making sure that certain pieces fit. This transformation of a somewhat difficult task to a much simpler task was perhaps what made me much more interested in the problem.

In some sense, narrowing down the possible set of solutions was what made me very interested in the problem. This is similar to what happens in a crossword, when you have found all letter except one or two. You know that the solution can be found after a few minutes of thinking. You know that you are close. That is when you can’t stop thinking about the word.

Previously, I wasn’t as interested in the problem because the solution space was huge. I wasn’t sure that I even knew the techniques that would perhaps be required to ultimately solve the problem. The possible size of the solution space turned out to be the biggest obstruction to getting interested in the problem.

Hence, when we talk about famous scientists and mathematicians obsessively chipping away at problems, we are perhaps only observing the fact that they were “smart” enough to reduce the solution space on their own, and hence knew that they were close to a complete solution. Achievement is not a result of focus. Focus is a result of smartness and achievement.

The network effects in human behavior

Actions come before thoughts.

I make coffee for my roommate everyday. It felt really awkward at first, as I don’t really have a lifelong habit of cooking for others. In fact, I felt a strong revulsion at first. I didn’t really have to do it. It’s not like anyone else was making coffee for me. I’d have to clean the coffee strainer, find a clean up, etc. Every morning. Before they woke up. But I pushed myself through this. Expectedly, this became easier with time. More surprisingly, it make my outlook towards them much more positive in almost every other facet of our interactions. I now notice more clearly when they are uncomfortable, or want something that I can help them with. I am more forgiving of bad interactions, and, in some cosmic sense of the word, have more “empathy”.

Let’s explore this further.

Benjamin Franklin

Benjamin Franklin was a man of many talents, not the least of which was giving pretty good advice. When asked how to convert a hater into someone who likes you, Franklin have the following counter-intuitive advice to offer (paraphrased):

When someone doesn’t like you, ask them for their help in something. Decency will compel them to help you. And after helping you, their demeanor towards you will improve.

I have long pondered this surprising piece of advice. I once heard on a podcast that this is an example of “cognitive dissonance”. Your thoughts only rarely lead to action. It is your unconscious habits and patterns that lead to most of your actions. Thoughts only serve to justify those actions to yourself. There is a lot of scientific evidence to back this up. When patients that had just come out of a coma were told that they had done certain things (which they had not), and asked why they had done those things, they could instantly come up with reasons. We are unmatched in offering justifications, real or imagined.

Now suppose you force yourself to do something good for someone. Your brain will feel a compulsion to justify why you did that thing for them. Most often, it’ll come up with “that person is good, and is deserving of the help you offered”. Hence, you are now more motivated to help them out the next time they need your help. This becomes a positive feedback loop, which may lead to you offering your help to that person for the rest of your life and maintaining a high opinion of them.

Relevance to my life

I’m not a completely garbage human being. I donate 10% of my earnings to charity. I volunteer my time and effort to raise funds for some organizations. I also almost always lean towards radical honesty. However, I can also be extremely selfish and short-tempered, hurting people close to me in the process. This duality is easy to understand: the charitable person was born out of the need to copy people I admire. The selfish and short-tempered person is, in some sense, who I “am”.

I slowly realized that in order to change “who I am”, or change my thoughts, I had to first change my actions. I started small. I started by making coffee. Forcing myself to plan gifts for loved ones on their birthdays. Calling people who I hadn’t talked to in a long time. Although these are things that come naturally to most people, they didn’t come naturally to me. At all. I had to fight against my natural instincts to do these things.

Slowly, these things became easier to do. It became less awkward to give my roommate a cup of coffee, order some surprise takeout food for my parents, etc. More importantly, I started to feel a compulsion to do other things for the people around me that I wasn’t actively practicing. My mother told me about a bad interaction she’d recently had, and I sat on my sofa feeling bad for hours for her. My roommate expressed some frustration with me, and I didn’t feel like arguing back because I understood their side. I was slowly developing empathy.

There is some “I am growing into a better person” side to this article. But there is also some interesting science behind this self-experimentation. If empathy can be thought of as a network of habits, composed of many nodes, we don’t need to activate all nodes to become empathetic. Lighting up only one of those nodes was also enough to bring all the nodes alive. For instance, I wouldn’t need to make a habit of wishing people on their birthdays, calling people regularly, helping them whenever I could, etc all at once. I would just need to make a habit of one of those things, and the other things would start coming naturally to me.

Are all human habits parts of networks? Does making your bed every morning make you a more responsible and independent person in general? Does becoming good at the piano make you a better musician in general? How else can we exploit these network effects to metamorphose into less crap version of ourselves?

Love and p-hacking

The following is a real conversation I had with a fellow graduate student (name and identity appropriately changed).

I knew that our relationship was doomed, and we were only being self-destructive by continuing it behind everyone’s back. However, my phone was once out of battery, and I was stranded in the middle of the city. Suddenly, I saw my boyfriend in the crowd. I called out to him, and he helped me get back home.

What are the chances that the one time I’m in desperate need of help, I would see my boyfriend? That had to be a sign from a higher power that we were meant to be together.

This graduate student was a star student from one of the Indian Institutes of Technology, and was set to have a great academic career. However, she was embroiled in a relationship that was destroying both her academic standing and her mental peace. Because she’d seen a “sign” from god.

This reminded me of my classmate from my Masters program, who was widely considered a “brilliant but lazy” mathematics student. He saw a “sign” from God, and decided that he must move to a certain city where his crush had moved. He took a large loan to fund his further education in that city. He never met his crush in that city, who refused to respond to his messages, and also failed out of his program.

How could the “signs” from God have been so wrong?

P-hacking is concept that is well-known but less well understood. Suppose you want to show a correlation between the rise of gun violence in American cities and the rise in chocolate consumption. You take 100 cities in America, and study their gun violence and chocolate consumption rates. Out of these 100 cities, it is possible through random variation alone that one city may show a positive correlation between the two variables. You then isolate that city, and claim to all your peers that you have indeed discovered that your hypothesis is true. “The more you eat chocolates in Denver, the more people you shoot!”, you may shout from rooftops, perhaps threateningly brandishing a Hersheys bar if you’re in Denver.

In other words, you didn’t start with “Let me explore whether a higher chocolate consumption leads to more gun violence in Denver.” You just took a large database, which may contain some untrue correlations purely by chance, and isolated those patterns.

P-hacking is akin to a scam in the statistical paper-publishing industry. Moreover, it is also effectively what my two friends above were doing.

The female graduate student didn’t start with “If I am ever stranded without my phone, and I see my boyfriend, I will take it to be a sign that we are meant to be together.” She didn’t have a hypothesis to begin with, which she could then have tested. Over the course of years (and hence a large dataset), she just saw an unlikely event, and retroactively interpreted that to be a sign. Similarly, my friend from my masters program hadn’t narrowed down his definition of what a sign from God could be.

This may seem to be a flimsy premise to write a blogpost on, but I often see intelligent people, who I’d love to see succeed, self-obliterate grandly because they may have seen some of these “signs”- that they’re meant to be with that one person who is effectively as nourishing to their dreams as cyanide. If you know these people in your life, shake them by the shoulders and make them read this post (or perhaps a better post on p-hacking). Our friends deserve our condescension and forced blogpost reading.

What’s an example of a “sign” that is not a result of p-hacking? It is one in which you first choose what the “sign” should be, and then observe whether you’re given such a sign. Thereby, this.

Types of desires

A lot of the online literature about narcissists says that narcissists don’t really have desires. They are scared to have desires, because they will then have to work towards those achieving them, and then face the possibility of failure. Consequently, narcissists want to attain their wishes of wealth, fame, etc by accident. The analogue of the girl slipping and falling into the hero’s arms. Some examples are: winning the lottery, somehow opening a billion-dollar startup, uncovering a law of nature that no one has thought about before, etc. Let’s explore this idea further by classifying the type of desires that one may have.

  1. Primary desires– These are desires that compel a person to a specific form of action. Examples include “I want to write a book on medieval architecture in France”, “I want to go to Italy”, “I want to open an electric car company”, etc. These desires generally don’t have a secondary goal in mind. These are the kinds of desires that change the world.
  2. Secondary desires– These are desires that have a secondary goal in mind, but still compel a person to action. Examples include “I want to do whatever makes me rich”, “I want to do something that makes everyone think I am very smart”, “I want to be thought of as someone who heralded a scientific revolution”, etc. If I want to do anything that makes me rich, I will have to find something that has made other people rich, and spend lots of time and effort developing that skill. However, I may inevitably keep second guessing myself. What if my attempt at getting rich is sub-optimal, and that I should do that completely different thing instead?
  3. Tertiary desires– These are desires that do not compel any action. Examples include “I want the situation to evolve in such a way that my present skills and capabilities are sufficient for making me rich, successful, etc”. In some sense, these desires preclude the necessity of making a choice, and consequently avoid the possibility of making a wrong choice. What if your chosen method of getting rich was wrong all along, proving that you were stupid?

I can confirm that tertiary desires are what narcissists have. In some sense, a lot of our desires are constructed in childhood, when we are surrounded by fairy tales. Most fairy tales induce tertiary desires. Cinderella was not someone who willed a better future for herself through hard work and intelligence. She was always the “true princess”. It was world (the prince, the glass shoe, etc) that changed around her to gift her a royal future.

Maybe narcissists have a tendency to import narratives from the books and movies that they’re exposed to into their own lives. And the narratives around us are mostly those that glorify what we already are, instead of what we can become.

The escape velocity of Jupiter

Rahul Gandhi, universally recognized as the village idiot of Indian politics, once, somehow, used the phrase “the escape velocity of Jupiter” in a political speech. I’m quoting from the speech below:

The escape velocity for earth is 11.2 km/sec while that of Jupiter is 60 km/sec. In India we have the concept of caste. There is an escape velocity here also. For a Dalit to achieve success the escape velocity required is that of Jupiter. More effort is needed.

It’s not even that bad an analogy. The “suppressed” classes would have to work harder to succeed in India. But then again, Rahul could have used a less astronomical analogy. He could have used “disabled runner competing with able runners”, or perhaps even “Rahul Gandhi competing with Narendra Modi”. But he chose to borrow an analogy from extra-planetary Newtonian physics that was probably lost on almost everyone.

It was widely thought that Rahul was trying to appear “smart”, in order to counter his widespread image of being “dumb”. Because this effort was so transparent, it only led to more ridicule.

Now I can sympathize with that. I have often given people cause to think less of my cognitive abilities. And in order to counter that, many a time have I dreamed up fantastical scenarios in which I say or do something very smart, that forces people to reassess their previous image of me, and conclude that they were mistaken about my lack of smartness. However, much like Rahul Gandhi, all my efforts in that direction have only led to more ridicule. Perhaps people smarter than Rahul and I are needed to dig us out of our intellectual graves.

Winston Churchill, writer, politician and racist par excellence, was famous for his sharp wit and earth-shaking putdowns. Given below is a sample:

Women (to Winston Churchill): If you were my husband, I’d poison your coffee.
WC: If you were my wife, I’d drink it!

https://upjoke.com/churchill-jokes

All of these jokes follow a similar pattern: someone would try to mess with Churchill, and Churchill would deftly show them who’s boss with a witty reply. Needless to say, such jokes enhanced his reputation as a smart man who shouldn’t be messed with.

However, what is perhaps surprising is that he made almost all of these jokes up! He literally wrote these jokes up, and then asked his subordinates to spread stories of “when Churchill gave these hilarious replies”. A loser move, if there ever was one, that worked wonders!

What lessons can one learn from Churchill? Creating a reputation for intelligence is not a one-person job. You can’t say or do something very “smart”, and hope that people will think highly of your intelligence. You have to “defeat” someone in an intellectual battle to be thought of as “smart”. And, like in the case of Churchill, these intellectual battles don’t even really have to take place! As long as some people believe that you won an intellectual battle, they’ll take you to be smart.

Let’s think of some situations in which people may think you are smart:

  1. You do really well in a competitive exam, thereby beating other people.
  2. You and another person have a bet on a fact or logical puzzle, that you win.
  3. You think of a solution to a problem before everyone else.
  4. You earn much more than other people, and didn’t have an advantage like family wealth or opportunity.

Situations in which people do not think you are smart, but only think you’re annoying:

  1. You quote an obscure philosopher to make your point. People may think you’re snooty, but not necessarily smart.
  2. You tell everybody about the book you’ve been reading recently.
  3. You tell people you only listen to Jazz from the 60s, and that all other kinds of music are too lowbrow for you.
  4. You write a WordPress blog.

This is a pattern followed in being considered as rich, good-looking, whatever. Being rich in absolute terms counts for very little. Although you may be able to afford most of what you want, you won’t be thought of as rich unless you’re richer than the people around you. The same goes for being good looking, etc. Humans give you status only when you have defeated someone else in a status battle. It is a zero-sum game.

I don’t mean to proselytize, but being considered as “kind” does not follow the same pattern. You don’t have to be the kindest individual around to be considered kind. You only have to be “kind enough” or “helpful enough”. Hmm…maybe there’s something here…

Understanding Roe vs Wade

What does Roe vs Wade say?

It says that the Supreme Court does not have the power to enforce the right to abortion. It is not a part of the Constitution of the United States (like the right to bear arms, etc), and the job of amending the Constitution is that of elected lawmakers and not the judiciary.

EDIT: It seems that the Supreme Court announcement says that whether abortion should be performed should be a decision taken jointly the doctor and the patient, and lawmakers cannot intrude on that. I am quoting it below:

This means, on the other hand, that, for the period of pregnancy prior to this “compelling” point, the attending physician, in consultation with his patient, is free to determine, without regulation by the State, that, in his medical judgment, the patient’s pregnancy should be terminated. If that decision is reached, the judgment may be effectuated by an abortion free of interference by the State.

I am not sure whether the Supreme Court can stop state legislatures from making abortion laws. Hence, these might just be empty words. Moreover, we are again in the scenario where a conservative doctor may trample on a woman’s individual right to have an abortion and force her to have the baby anyway.

It also seems that the overturning of Roe vs Wade was preceded by Dobbs vs Jackson, in which the Supreme Court found that the Constitution does not confer a right to abortion. This wiki article is a good summary of Dobbs vs Jackson. A charitable understanding of the situation might be that the Supreme Court was forced to conclude in Dobbs vs Jackson that there was no constitutional precedence for a right to abortion. This ruling was in direct contravention of Roe vs Wade. Hence, for the purposes of self-consistency, the Supreme Court also overturned Roe vs Wade.

An uncharitable reading might be that the Supreme Court used its ruling in Dobbs vs Jackson as a weapon to overturn Roe vs Wade.

But isn’t the right to abortion a basic human right? Doesn’t the Supreme Court have a duty to enforce a basic human right?

The Supreme Court is not discussing the moral nature of the issue, but only the legal nature. If the right to abortion is indeed a moral right, the people of the country too will see it that way, and then elect lawmakers who will make the right to abortion part of the constitution.

Okay, so why don’t state legislatures make abortion legal?

A large part of the population, and consequently a large fraction of lawmakers, see abortion as immoral unless the life of the mother is in danger. Hence, many states (like Texas) will not make abortion legal.

What exactly is the abortion law in conservative states like Texas?

This is a good summary of the abortion law in Texas. Fetuses cannot be aborted after a faint heartbeat is detected, which is generally 6-7 weeks into the pregnancy. There is no exception for rapes, incest, etc.

Doesn’t the fetus become a person when a heartbeat can be detected? Why should the fetus be killed? Even if it is the result of rape or incest, it is not the fetus’s fault!

Why draw an arbitrary line at detecting a faint heartbeat? Why not say that each sperm is a potential person, and hence make masturbation illegal? Also, bringing up a child that is a result of rape or incest can be extremely traumatizing for the mother. We have to prioritize the already living over the will-be-living.

The point about the sperm was totally arbitrary. When you make a pizza, for instance, the dough is not equivalent to the pizza, although it is perhaps the fundamental ingredient. If you throw away the dough, you’re not throwing away the pizza. However, when the pizza has been in the oven for a while and is beginning to look like one, throwing it away at that point would be equivalent to throwing a pizza away.

Well, continuing that analogy, the dough doesn’t begin to look like a pizza after being put into the oven for 1 minute. Similarly, a fetus doesn’t become a person at 6 weeks. It begins to do so at around 23 weeks. This is reflected in California’s abortion law, which allows abortion up to roughly 23 weeks.

But isn’t a heartbeat a universally accepted sign of life? Of a person?

Although there is historical precedence for treating a heartbeat as a fundamental indicator of life, another way to look at the issue is to note that a “person” is a form of life that can survive outside of the uterus. A 6 week old fetus cannot survive outside of the uterus, while a 23 week fetus can.

But a 6 week fetus will inevitably become a 23 week fetus, right? Isn’t killing a 6 week fetus morally equivalent to killing a 23 week one?

Would you say masturbating is equivalent to killing a baby? Would you say that throwing away an unflattened ball of dough equivalent to throwing away a pizza?

Let’s flip the script. Killing a man of 30 is more morally egregious than killing an old man, right? The young man had so much more left to experience. Similarly, killing a child is much more morally egregious than killing a man of 30, because that child had hardly seen anything in life. Shouldn’t it consequently be more morally egregious to kill a 6 week old baby than killing a 23 week old baby, 30 year old man or old man?

But then shouldn’t masturbating be the worst possible sin? Shouldn’t not procreating be a sin? Shouldn’t we be procreating as much as we can? Every life that we don’t bring on Earth is a life wasted.

Well, okay. If we continue to procreate at every opportunity we get, we won’t be able to lead a happy life, or even have the resources to nourish our children. Hence, some balance has to be stuck between procreating and doing other things.

But let’s get back to the nitty-gritties. As of today, if a woman needs to get an abortion, she can get it before 6 weeks even in conservative states like Texas. If she needs to get one even after that, she can travel to a liberal state like California to get one. Is overturning Roe vs Wade really going to substantially hamper a woman’s efforts to get an abortion?

Well, it seems that women normally take five to six weeks to realize that they’re pregnant. Hence, by the time that a woman even realizes that she’s pregnant, abortion will become illegal for her in a state like Texas. Now she will have to travel to another state to get an abortion.

Seeing as unwanted pregnancies disproportionately affect women living in poverty and working minimum wage jobs or being homeless, these women will now be forced to take a break from work, and somehow find a way to pay for a weeks’ long trip to another state in order to have an abortion. Is it really that difficult to imagine that a lot of such women will choose to instead opt for unsafe and illegal procedures to get rid of their fetuses, thereby injuring their health?

Okay, I see that there is a moral argument to making abortion easily available to women. But let’s talk statistics. How many women die to the unavailability of abortion?

Consider the following passage from this link:

So how many lives will easy access to abortion save? Clearly there’s an upper bound of 700. Hence, less than 700 lives will be saved from all over the US if abortion is made freely available.

EDIT: I suppose there would be more deaths than 700, now that women who had access to abortion no longer have it in at least 13 states. I don’t have the numbers, and haven’t been able to find reliable statistics anywhere. We can do simple upper bound calculations though.

The Guttmacher Institute says that there were 930,160 abortions in 2020.

Unsafe abortions cause 3 more deaths per 1000 abortions than safe abortions. Even if we assume that all abortions in the US become illegal, and hence unsafe (this is a crazy upper bound), the number of extra deaths after overturning Roe vs Wade would be \frac{3}{1000}\times 930160=2790. We can further refine this number by using the fact that only 13/50 states have outlawed abortion. Assuming a uniform distribution of abortions (which may or may not be a good assumption), we get \frac{13}{50}*2790=725. This agrees with the earlier figure of 700, and I am now more confident in this statistic.

That’s not a lot of lives. The US government kills many, many more than that each year in its imperialist adventures. Aren’t there other issues that we should be focusing on, that can perhaps save more lives?

Well, the point is that overturning Roe vs Wade is the first step towards a truly intolerant state of affairs, in which the Supreme Court also reverses its rulings on same-sex marriage, contraception, etc. The Supreme Court has historically been a bulwark of individual freedom against majoritarian conservatism in states like Texas, etc. If the Supreme Court keeps claiming that it does not have the power to guarantee individual freedoms that were not enshrined in the constitution, and that this is the prerogative of lawmakers, then this could be a truly backward step for society in the United States.

But shouldn’t people abide by the decisions of their lawmakers? If you don’t agree with them, don’t re-elect them!

Well, majoritarian democracy does not always lead to the protection of individual minority rights. The majority in any country will try to undermine the minority. This is why individual freedom has to be guaranteed by the Supreme Court, and not legislatures. Texas, for instance, may never elect a government that supports same sex marriage; at least in the near future. However, homosexuals in Texas should have the right to marry, as long as they don’t infringe on the freedoms of others.

Can’t Biden bring back Roe vs Wade, then? Why wait for state legislatures?

Well, it seems that he can, but he has used up all of his bargaining chips getting his economic bill approved by the Republicans.

EDIT: It seems that what the article actually says is that Biden needs at least 60/100 votes in the Senate to get the bill passed. Although ordinary bills need a simple majority of 51/100, bills that may lead to a filibuster need 60/100. The Senate comprises of:

Notably, the Senate prevented a bill that would codify abortion in a 51-49 majority earlier this year. Hence, it is unlikely that Biden would be able to get this bill passed in the near future.

Let us look at historical precedence. Women’s right to vote was passed in the House, and not imposed by the Supreme Court. African-Americans’ right to vote was also passed in the House, and not enforced by the Supreme Court. Shouldn’t we hope for the same in the case of abortion, instead of asking the Supreme Court to perform an unconstitutional duty? On the other hand, hundreds and thousands of women will suffer and die before we see the kind of societal change needed to codify the right to abortion. Don’t we have some sort of moral obligation to prevent this from happening?

In some broad sense of the word, the “right to abortion” is not the “will of the people of the United States”. Both the centre and the state legislatures do not have enough votes to to get this bill passed. However, individual rights have rarely been the “will of the people”.