• 0 Posts
  • 97 Comments
Joined 10 months ago
cake
Cake day: May 16th, 2025

help-circle
  • I’d say that the great problems that last for decades do not fall purely to random bullshit and require serious advances in new concepts and understanding. But even then, the romanticized warrior culture view is inaccurate. It’s not like some big brain genius says ā€œI’m gonna solve this problemā€ and comes up with big brain ideas that solve it. Instead, a big problem is solved after people make tons of incremental progress by trying random bullshit and then someone realizes that the tools are now good enough to solve the big problem. A better analogy than the Good Will Hunting genius is picking a fruit: you wait until it is ripe.

    But math/CS research is not just about random bullshit go. The truly valuable part is theory and understanding, which comes from critically evaluating the results of whatever random bullshit one tries. Why did idea X work well with Y but not so well with Z, and where else could it work? So random bullshit go is a necessary part of the process, but I’d say research has value (and prestige) because of the theory that comes from people thinking about it critically. Needless to say, LLMs are useless at this. (In the Knuth example, the AI didn’t even prove that its construction worked.)

    I think intelligence is overrated for research, and the most important quality for research is giving a shit. Solving big problems is mostly a question of having the right perspective and tools, and raw intelligence is not very useful without them. To do that, one needs to take time to develop opinions and feelings about the strengths and weaknesses of various tools.

    Of course, every rule has exceptions, and there have been long standing problems that have been solved only when someone had the chutzpah to apply far more random bullshit than anyone had dared to try before.


  • The 31st try resulted in them only solving the problem for odd m, but the even m case was still open. So of course this happened:

    Filip also told me that he asked Claude to continue on the even case after the odd case had been resolved. ā€œBut there after a while it seemed to get stuck. In the end, it was not even able to write and run explore programs correctly anymore, very weird. So I stopped the search.ā€

    Knuth did add a postscript on other friends maybe kinda vibing a possible solution for even m:

    On March 3, Stappers wrote me as follows: ā€œThe story has a bit of a sequel. I put Claude Opus 4.6 to work on the m = even cases again for about 4 hours yesterday. It made some progress, but not a full solution. The final program . . . sets up a partial fiber construction similar to the odd case, then runs a search to fix it all up. . . . Claude spent the last part of the process mostly on making the search quicker instead of looking for an actual construction. . . . It was running many programs trying to find solutions using simulated annealing or backtrack. After I suggested to use the ORTools CP-SAT [part of Google’s open source toolkit, with the AddCircuit constraint] to find solutions, progress was better, since now solutions could be found within seconds.ā€ This program is [4].

    Then on March 4, another friend — Ho Boon Suan in Singapore — wrote as follows: ā€œI have code generated by gpt-5.3-codex that generates a decomposition for even m ≄ 8. . . . I’ve tested it for all even m from 8 to 200 and bunch of random even values between 400 and 2000, and it looks good. Seems far more chaotic to prove correctness by hand here though; the pattern is way more complex.ā€ That program is [5]. (Wow. The graph for m = 2000 has 8 billion vertices!)

    I find it slightly funny how Stappers suggested to the AI to use specific external tools that are actually reliable (like ORTools). This also makes me question how much the of the AI’s ā€œinsightā€ was a result of handholding and the rubber duck effect.

    For context:

    1. This is planned as a hard exercise for a textbook.
    2. There are likely so many solutions that finding a general program that works is like hitting the side of a barn with an arrow. Random bullshit go is an excellent strategy here.
    3. The AIs did not provide proofs that their solutions worked. This is kind of a problem if you want to demonstrate that AI has understanding.

  • I can see them by clicking on the ā€œReasoned for 6m 34sā€ box on my desktop browser (I know, great UI design) without needing to log in. This did not work on my phone. In any case, I can copy it here:

    Warning: very long slop

    Exploring Hadamard matrix construction for order 428

    For a Hadamard matrix of order 428, we need to confirm that it’s a multiple of 4, which it is (428 = 4 * 107). However, the challenge is that order 107 doesn’t work since it’s not a multiple of 4. A possible approach could involve using constructions like Williamson or Goethals-Seidel. Alternatively, I could try a Kronecker product of smaller matrices.

    Examining constructions for Hadamard matrix of order 428

    Since 107 ≔ 3 mod 4, Paley type I gives a Hadamard of order 108, but I need 428, not 432. That’s a little tricky. I wonder if there’s a known construction for order 4*107 using ā€œHadamard matrix of order 4qā€ or conference matrices. Could I adapt the generalized Paley approach for this?

    Exploring conference matrix construction for Hadamard order 428

    For q = 107, Paley construction doesn’t work since q ≔ 3 mod 4. But if I can create a conference matrix of order 214 (since 214 ≔ 2 mod 4), then a Hadamard matrix of order 428 would follow. Conference matrices require specific conditions, but this seems promising. Let’s focus on 214.

    Searching for explicit Hadamard matrix of order 428

    To generate a Hadamard matrix of order 428, it might be feasible since many such matrices exist up to large orders, but I need one explicitly with ±1 entries. A direct construction could involve methods like Goethals-Seidel, which uses circulant matrices to satisfy specific conditions. I’ll need to implement this method.

    Exploring construction methods and searching for Hadamard matrix 428

    For n=107, there might be a way to use Legendre sequences for Goethals-Seidel difference sets. I know there are constructions for order 4q where q is an odd prime power, but using approaches like Scarpis or Turyn may help too. I’ll search for an explicit Hadamard matrix of order 428 for a possible example or construction.

    Exploring accessible sources and construction options for Hadamard matrix

    It seems like there may be server timeouts, so I’ll need to try other sources like GitHub, arXiv, or design theory papers. We could construct the Hadamard matrix ourselves using known algorithms, but it’s heavy. If accessible, sequences from a Kharaghani paper could help, and SageMath might have relevant functions too.

    Identifying base sequences to build Hadamard matrix

    To create a Hadamard matrix of order 428, I think I can use base sequences of lengths 71 and 36, which combine to 107. I’ll look for Turyn-type sequences or T-sequences in accessible PDFs, potentially from open sources like arXiv. A useful file might be ā€œH_428,ā€ so I’ll search for it.

    Checking GitHub for Hadamard matrix at 428 order

    I found a GitHub project, ā€œanymatrix,ā€ which claims to have Hadamard matrices up to order 428. It might include the 428 matrix in MATLAB format. I’ll check the repository to see if it has the actual file with the matrix data. Let’s open it and explore!

    Opening GitHub repository for 428 Hadamard matrix

    The page at math.ntua.gr timed out before, but I might try downloading the file directly instead of opening it. Alternatively, I could explore the GitHub ā€œanymatrixā€ repository, which likely has Hadamard matrices up to order 428. I’ll open the repository’s root to check its structure and find the matrix file.

    Opening Hadamard folder

    I’ll go ahead and open the Hadamard folder at link ID 81. Time to check what’s inside and see if the matrix or relevant files are there!

    Trying GitHub raw content for Hadamard matrix

    It looks like extracting the files might have failed because of JS requirements, so I’m considering an alternative: accessing raw content directly from GitHub. I’ll search the repository for relevant files containing the 428 matrix — once I find out the exact file names, I can access them with no issue!

    Trying direct access to Hadamard file

    It seems the math.ntua listing might still be promising, with both text and zip formats for the Hadamard matrix. I’ll try opening the direct file URL instead of the page, hoping it’ll avoid the timeout issues. It’s worth retrying, as the timeout could have been temporary. Let’s try again!

    Trying alternative ways to access Hadamard matrix

    Since opening the math.ntua.gr server is

    Checking old Hadamard links

    The page seems to be from 2001, and it has a link to Neil Sloane’s library list, which might include the H428 matrix. However, the link for item 8 points to ā€œwww.research.att.com ,ā€ which could have moved. Let’s click and see if it’s still accessible.

    Trying alternative download for Hadamard matrix

    The ATT site removed the old page, and Sloane’s library now points to a page that times out. Another option might be using Anymatrix, but GitHub listings aren’t working. I’ll try accessing the IPM website directly to download the matrix — maybe the file’s URL works better with HTTP instead of HTTPS. Let’s give it a try.

    Searching for accessible Hadamard matrix

    The page redirects to HTTPS and times out, which might indicate blocking. Maybe the matrix is hosted elsewhere, like in a plain text or PDF format. I’ll search for terms like ā€œh428.txtā€ or ā€œhadamard428.txtā€ on cs.uleth.ca — there’s a mention of a PDF that could include it. Let’s give that a try.

    Opening ADTHM page for possible matrix

    I’ve found a listing on cs.uleth, and there’s a link on the ADTHM page that might lead to the matrix in text format. It could be what I’m looking for, so I’ll go ahead and open the ADTHM page to check it out. Let’s see if it includes the matrix!

    Accessing matrix text through link

    Awesome! I found a link labeled ā€œEntries as textā€ (ID: 26). This could be the matrix in the text format I’m looking for. I’ll go ahead and click the link to download it. Let’s see if this works!

    Parsing the XPM image to a matrix

    The H428.html contains XPM image data, not matrix entries. It seems to represent values with two colors, p and m, which likely stand for +1 and -1. I can map p to 1 and m to -1 (just to simplify things) and validate that the Hadamard property holds by checking H*H^T = 428I. I’ll fetch and parse the full content to confirm.

    Downloading H428.html

    Alright, I’ll use the container.download method to fetch the H428.html file. I previously opened the URL, so that should meet the requirement. Now, I’ll download the file directly to /mnt/data/H428.html and get the content I need. This should work smoothly and efficiently!

    Understanding limitations for container.download

    It seems the container.download method restricts us to file types other than text/html — likely just images or data. Since I can’t use click or fetch via Python, I’ll need to rely on web.run for the content. However, the 200-word limit means we can’t fully retrieve the 428 lines. I may need to process it in parts.

    Handling 200-line limits in tool response

    Since the tool response gets cut off around 200 words, I can’t present more than that in the final output. However, I can strategically open various line ranges and parse those internal portions to reconstruct the full matrix. This should allow me to gather all the necessary data without breaking the word limits.

    Handling file retrieval and parsing

    To retrieve the full content, I can call the tool multiple times from different lines, reconstructing the file. However, retrieving 428 lines in total means a heavy operation, spread across several calls. Given the content-type restrictions, I can process the data using Python, but I need to work with a local file.

    Figuring out how to retrieve and process data

    To get more lines, I can use a tool to fetch a longer response, but there’s still a limit to the tool’s output. Since the H428.html file is too large, I could check if there’s a plain text version like ā€œH428.txtā€ in the directory that can be downloaded. I’ll also look for any relevant comments in the HTML.

    Looking for matrix in different format

    The file starts with ā€œ/* XPM */,ā€ indicating it’s actually plain text despite being labeled as HTML. I could try adding a download parameter or using a raw link, but the content type restriction remains. Next, I’ll check if there’s a plain text version of the matrix, like ā€œH428.txtā€ in the directory.

    Considering ways to fetch and process the file

    There’s no plain text, but the XPM format might be parseable. I could gradually access the file using the web tool, then reconstruct it with Python. One option is fetching parts with web tool, accumulating in Python, and then processing. I could work around content type restrictions with query parameters for text/plain.

    Exploring options to access content

    The H428.html doesn’t seem like real HTML. Maybe I can access it through a ?download=1 query or H428.xpm? I might also try the enlarge image link (id 25). If it’s a GIF/PNG, I could download it and extract pixel values, though this might involve some image processing. I’ll check it out.

    Downloading and inspecting image

    The image is a PNG, so I can download it using the container. I’ll pull down H428_big.png and check the image’s pixel structure. It’s likely 856x856, possibly scaled at 2x, though the matrix should be 428x428. I’ll inspect the image further after downloading it.

    Opening image for inspection

    The file is small, just 5kb, which likely means it’s compressed and may be a 428x428 image with a palette. I’ll go ahead and open the image to inspect it using the container, and then I can analyze the pixels to understand how it’s structured further.

    Processing image for matrix conversion

    We have the image, so it’s time to use Python to read it and convert the pixel colors into matrix entries. First, I need to check the image’s pixel dimensions—more likely it will be 428x428 or a multiple of that. I’ll use Python with PIL to open the image and confirm




  • I am a computer science PhD so I can give some opinion on exactly what is being solved.

    First of all, the problem is very contrived. I cannot think of what the motivation or significance of this problem is, and Knuth literally says that it is a planned homework exercise. It’s not a problem that many people have thought about before.

    Second, I think this problem is easy (by research standards). The problem is of the form: ā€œWithin this object X of size m, find any example of Y.ā€ The problem is very limited (the only thing that varies is how large m is), and you only need to find one example of Y for each m, even if there are many such examples. In fact, Filip found that for small values of m, there were tons of examples for Y. In this scenario, my strategy would be ā€œrandom bullshit goā€: there are likely so many ways to solve the problem that a good idea is literally just trying stuff and seeing what sticks. Knuth did say the problem was open for several weeks, but:

    1. Several weeks is a very short time in research.
    2. Only he and a couple friends knew about the problem. It was not some major problem many people were thinking about.
    3. It’s very unlikely that Knuth was continuously thinking about the problem during those weeks. He most likely had other things to do.
    4. Even if he was thinking about it the whole time, he could have gotten stuck in a rut. It happens to everyone, no matter how much red site/orange site users worship him for being ultra-smart.

    I guess ā€œrandom bullshit goā€ is served well by a random bullshit machine, but you still need an expert who actually understands the problem to read the tea leaves and evaluate if you got something useful. Knuth’s narrative is not very transparent about how much Filip handheld for the AI as well.

    I think the main danger of this (putting aside the severe societal costs of AI) is not that doing this is faster or slower than just thinking through the problem yourself. It’s that relying on AI atrophies your ability to think, and eventually even your ability to guard against the AI bullshitting you. The only way to retain a deep understanding is to constantly be in the weeds thinking things through. We’ve seen this story play out in software before.




  • Baldur Bjarnason’s essay remains evergreen.

    Consider homeopathy. You might hear a friend talk about ā€œwater memoryā€, citing all sorts of scientific-sounding evidence. So, the next time you have a cold you try it.

    And you feel better. It even feels like you got better faster, although you can’t prove it because you generally don’t document these things down to the hour.

    ā€œMaybe there is something to it.ā€

    Something seemingly working is not evidence of it working.

    • Were you doing something else at the time which might have helped your body fight the cold?

    • Would your recovery have been any different had you not taken the homeopathic ā€œremedyā€?

    • Did your choosing of homeopathy over established medicine expose you to risks you weren’t aware of?

    Even when looking at Knuth’s account of what happened, you can already tell that the AI is receiving far more credit than what it actually did. There is something about a nondeterministic slot machine that makes it feel far more miraculous when it succeeds, while reliable tools that always do their job are boring and stupid. The downsides of the slot machine never register in comparison to the rewards.

    I feel like math research is particularly susceptible to this, because it is the default that almost all of one’s attempts do not succeed. So what if most of the AI’s attempts do not succeed? But if it is to be evaluated as a tool, we have to check if the benefits outweigh the costs. Did it give me more productive ideas, or did it actually waste more of my time leading me down blind alleys? More importantly, is the cognitive decline caused by relying on slot machines going to destroy my progress in the long term? I don’t think anyone is going to do proper experiments for this in math research, but we have already seen this story play out in software. So many people were impressed by superficial performances, and now we are seeing the dumpster fire of bloat, bugs, and security holes. No, I don’t think I want that.

    And then there is the narrative of not evaluating AI as an objective tool based on what it can actually do, but instead as a tidal wave of Unending Progress that will one day sweep away those elitists with actual skills. This is where the AI hype comes from, and why people avoid, say, comparing AI with Mathematica. To them I say good luck. We have dumped hundreds of billions of dollars into this, and there are only so many more hundreds of billions of dollars left. Were these small positive results (and significant negatives in places like software) worth hundreds of billions of dollars, or perhaps were there better things that these resources could have been used for?



  • This somehow makes things even funnier. If he had any understanding of modern math, he would know that representing a set of things as points in some geometric space is one of the most common techniques in math. (A basic example: a pair of numbers can be represented by a point in 2D space.) Also, a manifold is an extremely broad geometric concept: knowing that two things are manifolds does not meant that they are the same or even remotely similar, without checking the details. There are tons of things you can model as a manifold if you try hard enough.

    From what I see, Scoot read a paper modeling LLM inference with manifolds and thought ā€œwow, cool!ā€ Then he fished for neuroscience papers until he found one that modeled neurons using manifolds. Both of the papers have blah blah blah something something manifolds so there must be a deep connection!

    (Maybe there is a deep connection! But the burden of proof is on him, and he needs to do a little more work than noticing that both papers use the word manifold.)


  • Kolmogorov complexity:

    So we should see some proper definitions and basic results on the Kolmogorov complexity, like in modern papers, right? We should at least see a Kt or a pKt thrown in there, right?

    Understanding IS compression — extracting structure from data. Optimal compression is uncomputable. Understanding is therefore always provisional, always improvable, never verifiably complete. This kills ā€œstochastic parrotā€ from a second independent direction: if LLMs were memorizing rather than understanding, they could not generalize to inputs not in their training data. But they do. Generalization to novel input IS compression — extracting structure, not regurgitating sequences.

    Fuck!


  • Nonsensical analogies are always improved by adding a chart with colorful boxes and arrows going between them. Of course, the burden of proof is on you, dear reader, to explain why the analogy doesn’t make sense, not on the author to provide more justification than waving his hands really really hard.

    Many of these analogies are bad as, I don’t know, ā€œDenmark and North Korea are the same because they both have governmentsā€ or something. Humans and LLMs both produce sequences of words, where the next word depends in some way on the previous words, so they are basically the same (and you can call this ā€œpredictingā€ the next word as a rhetorical flourish). Yeah, what a revolutionary concept, knowing that both humans and LLMs follow the laws of time and causality. And as we know, evolution ā€œoptimizesā€ for reproduction, and that’s why there are only bacteria around (they can reproduce every 20 minutes). He has to be careful, these types of dumbass ā€œoptimizationā€ interpretations of evolution that arose in the late 1800s led to horrible ideas about race science … wait a minute …

    He isn’t even trying with the yellow and orange boxes. What the fuck do ā€œhigh-D toroidal attractor manifoldsā€ and ā€œ6D helical manifoldsā€ have to do with anything? Why are they there? And he really thinks he can get away with nobody closely reading his charts, with the ā€œ(???, nothing)ā€ business. Maybe I should throw in that box in my publications and see how that goes.

    I feel like his arguments rely on the Barnum effect. He makes statements like ā€œhumans and LLMs predict the next wordā€ and ā€œevolution optimizes for reproductionā€ that are so vague that they can be assigned whatever meaning he wants. Because of this, you can’t easily dispel them (he just comes up with some different interpretation), and he can use them as carte blanche to justify whatever he wants.




  • For all the talk about these people being ā€œhighly agenticā€, it is deeply ironic how all the shit they do has no meaning and purpose. I hear all this sound and fury about making millions off of ChatGPT wrappers, meeting senators in high school bathrooms, and sperm races (?), and I wonder what the point is. Silicon Valley hagiographies used to at least have a veneer that all of this was meaningful. Are we supposed to emulate anyone just because they happen to temporarily have a few million dollars?

    Even though the material conditions of working in science are not good, I’d still rather do science than whatever the hell they’re doing. I would be sick at the prospect of being a ā€œhighly agenticā€ person in a ā€œnew and possibly permanent overclassā€, where my only sense of direction is a vague voice in my head telling me that I should be optimizing my life in various random ways, and my only motivation is the belief that I have to win harder and score more points on the leaderboard. (In any case, I believe this ā€œoverclassā€ is a lot more fragile than the author seems to think.)




  • my current favorite trick for reducing ā€œcognitive debtā€ (h/t @simonw ) is to ask the LLM to write two versions of the plan:

    1. The version for it (highly technical and detailed)
    2. The version for me (an entertaining essay designed to build my intuition)

    I don’t know about them, but I would be offended if I was planning something with a collaborator, and they decide to give me a dumbed down, entertaining, children’s storybook version of their plan while keeping all the technical details to themselves.

    Also, this is absolutely not what ā€œcognitive debtā€ means. I’ve heard technical debt refers to bad design decisions in software where one does something cheap and easy now but has to constantly deal with the maintenance headaches afterwards. But the very concept of working through technical details? That’s what we call ā€œthinkingā€. These people want to avoid the burden of thinking.


  • This is why CCC being able to compile real C code at all is noteworthy. But it also explains why the output quality is far from what GCC produces. Building a compiler that parses C correctly is one thing. Building one that produces fast and efficient machine code is a completely different challenge.

    Every single one of these failures is waved away because supposedly it’s impressive that the AI can do this at all. Do they not realize the obvious problem with this argument? The AI has been trained on all the source code that Anthropic could get their grubby hands on! This includes GCC and clang and everything remotely resembling a C compiler! If I took every C compiler in existence, shoved them in a blender, and spent $20k on electricity blending them until the resulting slurry passed my test cases, should I be surprised or impressed that I got a shitty C compiler? If an actual person wrote this code, they would be justifiably mocked (or they’re a student trying to learn by doing, and LLMs do not learn by doing). But AI gets a free pass because it’s impressive that the slop can come in larger quantities now, I guess. These Models Will Improve. These Issues Will Get Fixed.