<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Non-elementary</title>
    <link>https://nonelementary.com</link>
    <description>Notes from a long return to mathematical logic and model theory.</description>
    <language>en-us</language>
    <lastBuildDate>Tue, 25 Aug 2026 04:51:30 GMT</lastBuildDate>
    <pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate>
    <ttl>60</ttl>
    <atom:link href="https://nonelementary.com/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Not first-order, not easy</title>
      <link>https://nonelementary.com/posts/not-first-order-not-easy.html</link>
      <guid isPermaLink="true">https://nonelementary.com/posts/not-first-order-not-easy.html</guid>
      <pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate>
      <dc:creator>AJT</dc:creator>
      <category>Model Theory</category>
      <description>Why the blog is named after a theorem about finiteness, and what it&#39;s for.</description>
      <content:encoded><![CDATA[<h1>Not first-order, not easy</h1>
<p>In model theory, a class of structures is <em>elementary</em> if some single first-order theory axiomatises it exactly: $K$ is elementary iff there is a theory $T$ with $K = \{M : M \vDash T\}$. Most properties a working mathematician reaches for turn out not to be elementary. Finiteness is the standard example, and the proof is short enough to write out in full.</p>
<p>Suppose $T$ is a first-order theory, in some language $\mathcal{L}$, with arbitrarily large finite models, say a theory of groups or of linear orders. Suppose, for contradiction, that every model of $T$ is finite. For each $n \geq 1$, let</p>
<div class="katex-display-wrapper">$$\varphi_n \;\equiv\; \exists x_1 \cdots \exists x_n \bigwedge_{1 \le i &lt; j \le n} x_i \neq x_j,$$</div>
<p>the sentence asserting at least $n$ distinct elements, and set $\Gamma = T \cup \{\varphi_n : n \in \mathbb{N}\}$. Any finite subset $\Gamma_0 \subseteq \Gamma$ mentions only finitely many of the $\varphi_n$, so some $N$ bounds the ones it contains; since $T$ has a finite model with at least $N$ elements, $\Gamma_0$ is satisfiable. By compactness, $\Gamma$ is satisfiable too, so there is some $M \vDash \Gamma$. But $M \vDash \varphi_n$ for every $n$, so $M$ is infinite, while $M \vDash T$, contradicting the assumption that every model of $T$ is finite. No first-order theory can have exactly the finite structures as its models: finiteness is not elementary. Well-ordering fails to be elementary for the same reason, and so does torsion in groups.</p>
<p><em>Non-elementary</em> is that theorem, and also a joke about how the subject feels twenty years after I last did any of it seriously.</p>
<p>I wrote an undergraduate thesis on Gödel&#39;s incompleteness theorems two decades ago. After that came a master&#39;s in logic and formal grammar, a PhD in computational linguistics, and a career in AI. Along the way, most of the logic itself quietly fell out of my head. This blog is where it&#39;s getting put back, evenings and weekends, alongside full-time work. It&#39;s a multi-year project, not a course with an end date.</p>
<p>Most of my work in AI rewards moving fast and staying on the surface, and I wanted something that rewards the opposite: understanding one thing properly, all the way down, rather than just well enough to use it. Logic is what I already know how to do that with. It takes doing the proofs, not reading about them, and it takes years rather than weekends.</p>
<p>What ends up here will mostly be notes from that work: proofs that took longer than they should have, places where the intuition was wrong, occasionally some history or philosophy when it changes how a piece of mathematics reads. There is no fixed schedule, and no promise that the whole plan survives contact with the material.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>