Computational psychiatry Explain step by step in simple language

Reading File
Searching the Web

computational psychiatry explained simply 2025

Finding Sources
Reading Web Page

https://www.psychologytoday.com/us/blog/the-neuroscience-of-…

Reading File
Now I have excellent material from Kaplan & Sadock's Comprehensive Textbook of Psychiatry, the BMJ paper, and Psychology Today. Let me put together a clear, step-by-step explanation.

Computational Psychiatry - A Step-by-Step Guide


Step 1: What Problem Does It Solve?

Traditional psychiatry diagnoses mental illness from symptoms alone - what patients report and what doctors observe. But symptoms like "feels sad" or "hears voices" don't tell you why the brain is doing that. Two patients with identical symptoms might have completely different underlying brain problems.
Computational psychiatry tries to answer the "why" - by building mathematical models of how the brain processes information, and then asking: what would need to go wrong in those calculations to produce this symptom?
"The key logic is to use mathematical principles and formalism to generate consistent, rigorous, and testable hypotheses that can lead to a better understanding of mechanisms across levels of analysis."
  • Kaplan & Sadock's Comprehensive Textbook of Psychiatry

Step 2: The Brain as a Computer - The Core Metaphor

Think of the brain as a very powerful, but imperfect, prediction machine. Every moment, it is:
  1. Receiving raw sensory input (sights, sounds, feelings)
  2. Combining those signals with prior expectations ("what do I already believe?")
  3. Making a best guess about what is happening in the world
  4. Choosing an action based on that guess
Just like a computer processes inputs to produce outputs, the brain processes information using biological "computations" - electrical and chemical signals traveling through millions of neurons.
If the brain's computations are disrupted - even slightly - the result can be distorted perception, abnormal thoughts, or disordered behavior.

Step 3: The Key Mathematical Tool - Bayes' Theorem

The most widely used framework in computational psychiatry is Bayesian inference. In plain language:
Your brain's final belief = prior belief + new evidence, weighted by how reliable each is.
A simple example:
  • You see a face with a slightly negative expression.
  • If you already believe (prior) there is an 80% chance this person dislikes you, your brain calculates roughly 86% chance they dislike you.
  • But if your prior was only 30%, the same face gives only a 39% chance of dislike - you'd likely read it as neutral or positive.
The same sensory input produces completely different experiences depending on your prior beliefs and how much weight your brain puts on them. This is not just philosophy - it maps directly onto illnesses:
DisorderWhat Goes Wrong in the Calculation
SchizophreniaBrain over-weights prior beliefs; ignores contradicting sensory data → hallucinations, delusions
DepressionPrior beliefs are strongly negative and "sticky" → everything is interpreted as bad
AnxietyThreat priors are too high; danger signals are over-amplified
OCDPrediction errors (signals that say "something is wrong") never quiet down

Step 4: The Three Levels - From Neurons to Behavior

A core challenge is that psychiatric symptoms appear at the level of behavior and thought, but the root causes are often at the level of neurons and synapses. Computational psychiatry connects all three levels:
LEVEL 1: Neurons & Synapses
      (e.g., low dopamine, glutamate imbalance)
           ↓  [mathematical models bridge the gap]
LEVEL 2: Brain Circuits & Networks
      (e.g., prefrontal cortex, limbic system activity)
           ↓  [computational models predict behavior]
LEVEL 3: Behavior & Symptoms
      (e.g., anhedonia, paranoia, impulsivity)
Without computational tools, it was nearly impossible to rigorously link what happens at a synapse to what a patient experiences. Mathematical models let researchers say: "If dopamine signaling at this synapse is reduced by X%, the model predicts this specific decision-making impairment" - which can then be tested with brain scans (fMRI) and cognitive tasks.

Step 5: Reinforcement Learning - Learning and Reward

One of the biggest successes in the field comes from reinforcement learning (RL) models. These models describe how people learn from rewards and punishments.
The key signal is called a prediction error - the difference between what you expected to happen and what actually happened:
  • Positive prediction error: "Something better happened than I expected" → learn to seek it again
  • Negative prediction error: "Something worse happened than I expected" → learn to avoid it
In the brain, dopamine neurons fire in exactly this pattern. This was one of the first times a mathematical model perfectly predicted real neural behavior.
In depression, the brain's prediction error signals are blunted - rewards feel less rewarding, so the person stops seeking positive experiences (anhedonia). In addiction, drugs hijack the dopamine/prediction-error system, creating artificially huge signals that override normal learning.

Step 6: How Models Are Built and Used

Here is the practical workflow researchers follow:
  1. Design a cognitive task - e.g., a gambling game where participants win or lose points
  2. Record behavior - how does the person respond to wins and losses?
  3. Fit a mathematical model - find the model parameters (like "learning rate" or "reward sensitivity") that best explain that person's choices
  4. Compare patient vs. healthy groups - which parameters differ? (e.g., depressed patients have lower reward sensitivity)
  5. Link parameters to neurobiology - scan the brain while the task is happening; see which brain circuits correspond to the abnormal parameters
  6. Test predictions - can the model predict who will respond to a treatment?

Step 7: Two Main Types of Models

TypeWhat It DoesExample
Normative/Bayesian modelsDescribe what the brain should do in an ideal world, then find where it deviatesPredictive coding models of schizophrenia
Reinforcement learning modelsDescribe how the brain learns from experience and rewardDopamine/reward models in depression and addiction

Step 8: Real-World Applications

1. Better Diagnosis Instead of just asking "do you feel sad?", a clinician could give a patient a brief computerized task, extract their model parameters (like reward learning rate), and use those as objective biomarkers. This could distinguish subtypes of depression that look identical on the surface but need different treatments.
2. Predicting Treatment Response Computational models can potentially predict before treatment begins whether a patient will respond to a particular drug or therapy, based on their cognitive profile.
3. Drug Development If a model shows that schizophrenia involves too much "prior weighting" in the Bayesian calculation, a drug that reduces that specific parameter becomes a rational therapeutic target - rather than a trial-and-error approach.
4. Understanding Variability Why do two people with the same diagnosis respond completely differently to the same drug? Computational models can map individual differences in brain computation, making personalized medicine more achievable.

Step 9: Limitations and Honest Caveats

  • Models are simplifications - no mathematical model fully captures the brain's complexity.
  • Most findings are still at the research stage and not yet used in routine clinical practice.
  • The field requires collaboration between psychiatrists, neuroscientists, mathematicians, and computer scientists - a tall order.
  • There is a risk of "model fitting" - finding parameters that describe data without actually explaining the underlying biology.

Quick Summary

StepCore Idea
1Traditional psychiatry describes symptoms; computational psychiatry explains mechanisms
2The brain is a prediction machine performing mathematical computations
3Bayesian inference explains how prior beliefs + sensory data = perception
4Models bridge neurons → circuits → behavior
5Dopamine = biological prediction error signal; key to learning disorders
6Researchers fit models to behavior data to extract "computational fingerprints"
7Two main flavors: Bayesian/normative models and reinforcement learning models
8Applications: biomarkers, treatment prediction, drug targets
9Still emerging; not yet routine clinical practice

Computational psychiatry is essentially a new language for describing mental illness - one that is precise enough to be tested, mathematical enough to link biology and behavior, and specific enough to potentially guide treatment decisions for individual patients. The field is still young, but it represents one of the most scientifically rigorous approaches psychiatry has ever had, as described in Kaplan & Sadock's Comprehensive Textbook of Psychiatry and outlined in detail in a 2016 BMJ overview by Huys et al..

Create a visual infographic explaining Bayesian inference in psychiatry

Generating Image

A clean, professional medical infographic titled "Bayesian Inference in Psychiatry" with the following sections laid out vertically: 1. Header: Bold title "Bayesian Inference in Psychiatry" with subtitle "How the brain combines beliefs and evidence" 2. Section: "The Core Formula" showing a visual equation: PRIOR BELIEF + NEW EVIDENCE → POSTERIOR BELIEF (e.g., "What I expected" + "What I just sensed" = "My updated perception") 3. Section: "A Simple Example" - Show a neutral/slightly negative face emoji or icon with two scenarios side by side: - LEFT box (HIGH prior = "People dislike me 80%"): Arrow shows same face → perceived as VERY negative (86% threat) - RIGHT box (LOW prior = "People dislike me 30%"): Arrow shows same face → perceived as NEUTRAL (39% threat) Label: "Same face. Different brain. Different reality." 4. Section: "When Bayesian Inference Goes Wrong" - Three disorder cards in a row: - SCHIZOPHRENIA card (purple): Brain icon with "Priors TOO STRONG → Ignores real evidence → Hallucinations & Delusions" - DEPRESSION card (blue): Brain icon with "Negative priors LOCKED IN → Everything feels hopeless → Anhedonia" - ANXIETY card (orange): Brain icon with "Threat prior TOO HIGH → Over-amplifies danger signals → Panic" 5. Section: "The Brain's Prediction Loop" - Simple circular diagram: Expectation → Sensory Input → Prediction Error → Update Belief → (back to) Expectation 6. Footer note: "Computational psychiatry uses math to measure these distortions — and find treatments that fix them" Use a clean modern design with a white/light background, teal and navy blue color scheme, medical illustration style, clear readable fonts, plenty of white space, icons and arrows.

Bayesian Inference in Psychiatry Infographic
Here is your infographic on Bayesian Inference in Psychiatry. It covers the five key ideas:
  1. The core formula - Prior Belief + New Evidence = Updated Perception
  2. The face example - how the same neutral expression is read completely differently depending on prior beliefs
  3. Three disorder cards - what breaks down in schizophrenia, depression, and anxiety
  4. The prediction loop - the brain's continuous cycle of expect → sense → update
  5. The clinical punchline - computational psychiatry measures these distortions to guide treatment
The infographic is designed to be self-explanatory and can be used for teaching, presentations, or patient education. Let me know if you'd like any section changed, expanded, or reformatted!

Convert this infographic into a presentation slide deck

Reading File
Reading File
Reading File
Running Command

node /home/daytona/skills/shared/scripts/fetch_images.js "https://cdn.orris.care…

Running Command

ls /home/daytona/workspace/ 2>/dev/null && mkdir -p /home/daytona/workspace/baye…

Writing File

~/bayesian-psychiatry-pptx/build.js

const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");

// Fetch infographic image
const images = JSON.parse(
  execSync(
    `node /home/daytona/skills/shared/scripts/fetch_images.js "https://cdn.orris.care/image-gen/8997e4cfbfa94a0aad751c419e286949.png"`
  ).toString()
);
const infographicB64 = images[0].base64;

// ── Color Palette ──────────────────────────────────────────
const C = {
  navyDark:   "0A1628",   // title/footer background
  navy:       "0D2244",   // section headers
  teal:       "0E7490",   // accent
  tealLight:  "17A3BF",   // lighter accent
  tealPale:   "E0F7FA",   // card backgrounds
  white:      "FFFFFF",
  offWhite:   "F4F8FB",
  textDark:   "0D2244",
  textMid:    "1E4060",
  textLight:  "5A7A9A",
  purple:     "6B3FA0",
  purplePale: "EDE7F6",
  blue:       "1565C0",
  bluePale:   "E3F2FD",
  orange:     "E65100",
  orangePale: "FFF3E0",
  green:      "1B7A4A",
  greenPale:  "E8F5E9",
  accent:     "F59E0B",   // gold accent
};

const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Bayesian Inference in Psychiatry";
pres.author = "Computational Psychiatry";

// ═══════════════════════════════════════════════════════════
// SLIDE 1 — Title Slide
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();

  // Full dark background
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navyDark }, line: { color: C.navyDark } });

  // Teal accent bar top
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.teal }, line: { color: C.teal } });

  // Teal accent bar left
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0.08, w: 0.06, h: 5.545, fill: { color: C.teal }, line: { color: C.teal } });

  // Decorative circle background
  sl.addShape(pres.shapes.OVAL, { x: 6.2, y: -1.2, w: 5.5, h: 5.5, fill: { color: C.teal, transparency: 88 }, line: { color: C.teal, transparency: 88 } });
  sl.addShape(pres.shapes.OVAL, { x: 7.0, y: 2.0, w: 3.5, h: 3.5, fill: { color: C.tealLight, transparency: 92 }, line: { color: C.tealLight, transparency: 92 } });

  // Pill tag
  sl.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.6, y: 1.05, w: 2.8, h: 0.38, fill: { color: C.teal }, line: { color: C.teal }, rectRadius: 0.19 });
  sl.addText("COMPUTATIONAL PSYCHIATRY", { x: 0.6, y: 1.05, w: 2.8, h: 0.38, fontSize: 8.5, bold: true, color: C.white, align: "center", valign: "middle", charSpacing: 1.5, margin: 0 });

  // Main title
  sl.addText([
    { text: "Bayesian Inference", options: { breakLine: true, bold: true, fontSize: 40, color: C.white } },
    { text: "in Psychiatry", options: { bold: true, fontSize: 40, color: C.tealLight } },
  ], { x: 0.6, y: 1.6, w: 8.5, h: 1.5, valign: "top", margin: 0 });

  // Subtitle
  sl.addText("How the brain combines beliefs and evidence — and what happens when it goes wrong", {
    x: 0.6, y: 3.15, w: 7.2, h: 0.75, fontSize: 14, color: "8AB4CC", italic: true, valign: "top", margin: 0
  });

  // Bottom label
  sl.addText("Orris · Computational Psychiatry Series", {
    x: 0.6, y: 5.1, w: 8, h: 0.35, fontSize: 9, color: "4A7090", align: "left", margin: 0
  });

  // Gold accent line under title
  sl.addShape(pres.shapes.RECTANGLE, { x: 0.6, y: 3.08, w: 1.8, h: 0.04, fill: { color: C.accent }, line: { color: C.accent } });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 2 — What Is Bayesian Inference?
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });

  // Header bar
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.0, w: 10, h: 0.05, fill: { color: C.teal }, line: { color: C.teal } });

  sl.addText("SLIDE 1 OF 6", { x: 0.4, y: 0.08, w: 3, h: 0.28, fontSize: 8, color: "5A8AAA", charSpacing: 1.5, margin: 0 });
  sl.addText("What Is Bayesian Inference?", { x: 0.4, y: 0.32, w: 9.2, h: 0.55, fontSize: 26, bold: true, color: C.white, margin: 0 });

  // Core formula box
  sl.addShape(pres.shapes.RECTANGLE, {
    x: 0.4, y: 1.25, w: 9.2, h: 0.9,
    fill: { color: C.navy },
    line: { color: C.teal, pt: 2 },
    shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.12 }
  });
  sl.addText([
    { text: "Prior Belief  ", options: { bold: true, color: C.tealLight, fontSize: 18 } },
    { text: "+ ", options: { color: C.white, fontSize: 18 } },
    { text: "New Evidence  ", options: { bold: true, color: C.accent, fontSize: 18 } },
    { text: "→  ", options: { color: C.white, fontSize: 18 } },
    { text: "Updated Perception", options: { bold: true, color: C.white, fontSize: 18 } },
  ], { x: 0.4, y: 1.25, w: 9.2, h: 0.9, align: "center", valign: "middle", margin: 0 });

  // Three explanation cards
  const cards = [
    { label: "Prior Belief", desc: "What the brain already expects before getting any new input. Formed by past experience and memory.", accent: C.teal, pale: C.tealPale, x: 0.4 },
    { label: "New Evidence", desc: "Raw sensory data arriving in the moment — sights, sounds, touch, what someone says.", accent: C.accent, pale: "#FFF8E1", x: 3.7 },
    { label: "Updated Perception", desc: "The brain's best guess combining both. This is what we actually see, feel, and believe.", accent: C.navy, pale: C.bluePale, x: 7.0 },
  ];

  cards.forEach(c => {
    sl.addShape(pres.shapes.RECTANGLE, {
      x: c.x, y: 2.35, w: 2.85, h: 2.9,
      fill: { color: c.pale },
      line: { color: c.accent, pt: 2 },
      shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.1 }
    });
    // Accent header strip
    sl.addShape(pres.shapes.RECTANGLE, { x: c.x, y: 2.35, w: 2.85, h: 0.36, fill: { color: c.accent }, line: { color: c.accent } });
    sl.addText(c.label, { x: c.x, y: 2.35, w: 2.85, h: 0.36, fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
    sl.addText(c.desc, { x: c.x + 0.15, y: 2.78, w: 2.55, h: 2.3, fontSize: 12, color: C.textDark, valign: "top", wrap: true, margin: 0 });
  });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 3 — The Brain as a Prediction Machine
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });

  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.0, w: 10, h: 0.05, fill: { color: C.teal }, line: { color: C.teal } });
  sl.addText("SLIDE 2 OF 6", { x: 0.4, y: 0.08, w: 3, h: 0.28, fontSize: 8, color: "5A8AAA", charSpacing: 1.5, margin: 0 });
  sl.addText("The Brain as a Prediction Machine", { x: 0.4, y: 0.32, w: 9.2, h: 0.55, fontSize: 26, bold: true, color: C.white, margin: 0 });

  // Intro text
  sl.addText("Every moment, your brain runs a continuous loop — predicting what will happen, sensing what does happen, and updating its model of the world.", {
    x: 0.4, y: 1.18, w: 9.2, h: 0.6, fontSize: 13, color: C.textMid, italic: true, valign: "middle", margin: 0
  });

  // Loop steps — horizontal flow
  const steps = [
    { num: "1", title: "Expectation", desc: "Brain predicts what it will sense next", color: C.teal },
    { num: "2", title: "Sensory Input", desc: "Raw signal arrives from the environment", color: C.tealLight },
    { num: "3", title: "Prediction Error", desc: "Gap between expected and actual signal", color: C.accent },
    { num: "4", title: "Update Belief", desc: "Brain revises its model for next time", color: C.navy },
  ];

  const startX = 0.35;
  const boxW = 2.05;
  const gap = 0.22;

  steps.forEach((s, i) => {
    const x = startX + i * (boxW + gap);
    // Box
    sl.addShape(pres.shapes.RECTANGLE, {
      x, y: 2.0, w: boxW, h: 2.8,
      fill: { color: C.white },
      line: { color: s.color, pt: 2 },
      shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.1 }
    });
    // Colored top
    sl.addShape(pres.shapes.RECTANGLE, { x, y: 2.0, w: boxW, h: 0.5, fill: { color: s.color }, line: { color: s.color } });
    // Number circle
    sl.addShape(pres.shapes.OVAL, { x: x + 0.7, y: 1.7, w: 0.65, h: 0.65, fill: { color: s.color }, line: { color: s.color } });
    sl.addText(s.num, { x: x + 0.7, y: 1.7, w: 0.65, h: 0.65, fontSize: 15, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });

    sl.addText(s.title, { x, y: 2.0, w: boxW, h: 0.5, fontSize: 12, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
    sl.addText(s.desc, { x: x + 0.1, y: 2.58, w: boxW - 0.2, h: 2.0, fontSize: 12, color: C.textDark, wrap: true, valign: "top", margin: 0 });

    // Arrow between steps
    if (i < steps.length - 1) {
      const ax = x + boxW + 0.02;
      sl.addShape(pres.shapes.RECTANGLE, { x: ax, y: 3.32, w: 0.14, h: 0.06, fill: { color: C.textLight }, line: { color: C.textLight } });
      sl.addText("→", { x: ax - 0.04, y: 3.18, w: 0.28, h: 0.32, fontSize: 14, color: C.textLight, align: "center", valign: "middle", margin: 0 });
    }
  });

  // Cycle note
  sl.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 2.5, y: 5.1, w: 5, h: 0.35, fill: { color: C.tealPale }, line: { color: C.teal }, rectRadius: 0.1 });
  sl.addText("↺  This loop repeats hundreds of times per second", {
    x: 2.5, y: 5.1, w: 5, h: 0.35, fontSize: 10, color: C.teal, align: "center", valign: "middle", bold: true, margin: 0
  });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 4 — The Face Example
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });

  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.0, w: 10, h: 0.05, fill: { color: C.teal }, line: { color: C.teal } });
  sl.addText("SLIDE 3 OF 6", { x: 0.4, y: 0.08, w: 3, h: 0.28, fontSize: 8, color: "5A8AAA", charSpacing: 1.5, margin: 0 });
  sl.addText("Same Face, Different Brain, Different Reality", { x: 0.4, y: 0.32, w: 9.2, h: 0.55, fontSize: 24, bold: true, color: C.white, margin: 0 });

  // Central face stimulus
  sl.addShape(pres.shapes.OVAL, { x: 4.3, y: 1.25, w: 1.4, h: 1.4, fill: { color: C.tealPale }, line: { color: C.teal, pt: 2.5 } });
  sl.addText("😐", { x: 4.3, y: 1.25, w: 1.4, h: 1.4, fontSize: 36, align: "center", valign: "middle", margin: 0 });
  sl.addText("Slightly negative face\n(same sensory input)", {
    x: 3.6, y: 2.7, w: 2.8, h: 0.55, fontSize: 9.5, color: C.textMid, align: "center", italic: true, margin: 0
  });

  // Left box — high prior
  sl.addShape(pres.shapes.RECTANGLE, {
    x: 0.3, y: 1.2, w: 3.7, h: 3.9,
    fill: { color: "#FFF0F0" },
    line: { color: C.orange, pt: 2 },
    shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.1 }
  });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0.3, y: 1.2, w: 3.7, h: 0.42, fill: { color: C.orange }, line: { color: C.orange } });
  sl.addText("HIGH Prior — 'People dislike me 80%'", { x: 0.3, y: 1.2, w: 3.7, h: 0.42, fontSize: 10.5, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });

  sl.addText([
    { text: "Prior: ", options: { bold: true, color: C.orange } },
    { text: "p = 0.80\n", options: { color: C.textDark } },
    { text: "Sensory signal: ", options: { bold: true, color: C.textMid } },
    { text: "p = 0.60\n\n", options: { color: C.textDark } },
    { text: "Result: ", options: { bold: true, color: C.orange } },
    { text: "86% chance they dislike you\n\n", options: { bold: true, fontSize: 14, color: C.orange } },
    { text: "→ Face perceived as HOSTILE\n", options: { color: C.orange, bold: true } },
    { text: "→ Social anxiety, paranoia risk", options: { color: C.textMid, italic: true } },
  ], { x: 0.5, y: 1.72, w: 3.3, h: 3.2, fontSize: 12, valign: "top", wrap: true, margin: 0 });

  // Right box — low prior
  sl.addShape(pres.shapes.RECTANGLE, {
    x: 6.0, y: 1.2, w: 3.7, h: 3.9,
    fill: { color: C.greenPale },
    line: { color: C.green, pt: 2 },
    shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.1 }
  });
  sl.addShape(pres.shapes.RECTANGLE, { x: 6.0, y: 1.2, w: 3.7, h: 0.42, fill: { color: C.green }, line: { color: C.green } });
  sl.addText("LOW Prior — 'People dislike me 30%'", { x: 6.0, y: 1.2, w: 3.7, h: 0.42, fontSize: 10.5, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });

  sl.addText([
    { text: "Prior: ", options: { bold: true, color: C.green } },
    { text: "p = 0.30\n", options: { color: C.textDark } },
    { text: "Sensory signal: ", options: { bold: true, color: C.textMid } },
    { text: "p = 0.60\n\n", options: { color: C.textDark } },
    { text: "Result: ", options: { bold: true, color: C.green } },
    { text: "39% chance they dislike you\n\n", options: { bold: true, fontSize: 14, color: C.green } },
    { text: "→ Face perceived as NEUTRAL\n", options: { color: C.green, bold: true } },
    { text: "→ Healthy social interpretation", options: { color: C.textMid, italic: true } },
  ], { x: 6.2, y: 1.72, w: 3.3, h: 3.2, fontSize: 12, valign: "top", wrap: true, margin: 0 });

  // Arrows from center to boxes
  sl.addText("◀", { x: 3.85, y: 2.0, w: 0.5, h: 0.4, fontSize: 18, color: C.orange, align: "center", valign: "middle", margin: 0 });
  sl.addText("▶", { x: 5.65, y: 2.0, w: 0.5, h: 0.4, fontSize: 18, color: C.green, align: "center", valign: "middle", margin: 0 });

  // Key insight
  sl.addShape(pres.shapes.RECTANGLE, { x: 0.3, y: 5.12, w: 9.4, h: 0.35, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addText("Key insight: The same sensory signal produces entirely different realities depending on prior beliefs.", {
    x: 0.3, y: 5.12, w: 9.4, h: 0.35, fontSize: 10, bold: true, color: C.tealLight, align: "center", valign: "middle", margin: 0
  });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 5 — When Bayesian Inference Goes Wrong
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });

  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.0, w: 10, h: 0.05, fill: { color: C.teal }, line: { color: C.teal } });
  sl.addText("SLIDE 4 OF 6", { x: 0.4, y: 0.08, w: 3, h: 0.28, fontSize: 8, color: "5A8AAA", charSpacing: 1.5, margin: 0 });
  sl.addText("When Bayesian Inference Goes Wrong", { x: 0.4, y: 0.32, w: 9.2, h: 0.55, fontSize: 26, bold: true, color: C.white, margin: 0 });

  const disorders = [
    {
      name: "Schizophrenia",
      emoji: "🔴",
      problem: "Priors too strong",
      desc: "The brain over-weights its own expectations and under-weights real sensory evidence.",
      result: "Hallucinations · Delusions",
      detail: "Hears voices even in silence; believes unrelated events are personally directed.",
      color: C.purple,
      pale: C.purplePale,
      x: 0.3
    },
    {
      name: "Depression",
      emoji: "🔵",
      problem: "Negative priors locked in",
      desc: "Strongly negative prior beliefs override neutral or positive evidence from the world.",
      result: "Anhedonia · Hopelessness",
      detail: "Good events fail to update the negative world-model; reward signals are blunted.",
      color: C.blue,
      pale: C.bluePale,
      x: 3.65
    },
    {
      name: "Anxiety",
      emoji: "🟠",
      problem: "Threat prior too high",
      desc: "Danger signals are over-amplified; ambiguous input is defaulted to threatening.",
      result: "Panic · Hypervigilance",
      detail: "Normal sensations (heartbeat, crowds) are computed as high-risk emergencies.",
      color: C.orange,
      pale: C.orangePale,
      x: 7.0
    }
  ];

  disorders.forEach(d => {
    sl.addShape(pres.shapes.RECTANGLE, {
      x: d.x, y: 1.18, w: 2.85, h: 4.25,
      fill: { color: d.pale },
      line: { color: d.color, pt: 2.5 },
      shadow: { type: "outer", color: "000000", blur: 8, offset: 2, angle: 135, opacity: 0.12 }
    });
    // Header
    sl.addShape(pres.shapes.RECTANGLE, { x: d.x, y: 1.18, w: 2.85, h: 0.55, fill: { color: d.color }, line: { color: d.color } });
    sl.addText(d.name, { x: d.x, y: 1.18, w: 2.85, h: 0.55, fontSize: 15, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });

    // Problem tag
    sl.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: d.x + 0.15, y: 1.85, w: 2.55, h: 0.35, fill: { color: d.color, transparency: 82 }, line: { color: d.color }, rectRadius: 0.08 });
    sl.addText("⚠ " + d.problem, { x: d.x + 0.15, y: 1.85, w: 2.55, h: 0.35, fontSize: 10, bold: true, color: d.color, align: "center", valign: "middle", margin: 0 });

    sl.addText(d.desc, { x: d.x + 0.15, y: 2.3, w: 2.55, h: 1.0, fontSize: 11.5, color: C.textDark, wrap: true, valign: "top", margin: 0 });

    // Result badge
    sl.addShape(pres.shapes.RECTANGLE, { x: d.x + 0.15, y: 3.38, w: 2.55, h: 0.38, fill: { color: d.color }, line: { color: d.color } });
    sl.addText(d.result, { x: d.x + 0.15, y: 3.38, w: 2.55, h: 0.38, fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });

    sl.addText(d.detail, { x: d.x + 0.15, y: 3.84, w: 2.55, h: 1.4, fontSize: 10.5, color: C.textMid, wrap: true, italic: true, valign: "top", margin: 0 });
  });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 6 — Full Infographic Reference
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navyDark }, line: { color: C.navyDark } });

  sl.addText("Full Infographic Summary", {
    x: 0.4, y: 0.12, w: 9.2, h: 0.48, fontSize: 18, bold: true, color: C.white, margin: 0
  });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0.4, y: 0.58, w: 2.0, h: 0.04, fill: { color: C.teal }, line: { color: C.teal } });

  sl.addImage({ data: infographicB64, x: 1.2, y: 0.72, w: 7.6, h: 4.7 });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 7 — Clinical Applications
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.offWhite }, line: { color: C.offWhite } });

  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.0, fill: { color: C.navy }, line: { color: C.navy } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.0, w: 10, h: 0.05, fill: { color: C.teal }, line: { color: C.teal } });
  sl.addText("SLIDE 5 OF 6", { x: 0.4, y: 0.08, w: 3, h: 0.28, fontSize: 8, color: "5A8AAA", charSpacing: 1.5, margin: 0 });
  sl.addText("Clinical Applications", { x: 0.4, y: 0.32, w: 9.2, h: 0.55, fontSize: 26, bold: true, color: C.white, margin: 0 });

  const apps = [
    { icon: "🎯", title: "Better Diagnosis", desc: "Computerized tasks extract 'computational fingerprints' — objective biomarkers that go beyond symptom checklists.", color: C.teal },
    { icon: "💊", title: "Predict Treatment Response", desc: "Model parameters can forecast whether a patient will respond to a specific drug before treatment starts.", color: C.navy },
    { icon: "🔬", title: "Drug Development", desc: "If a model pinpoints which Bayesian parameter is disrupted, a drug targeting that exact mechanism becomes a rational goal.", color: C.purple },
    { icon: "👤", title: "Personalized Medicine", desc: "Individual differences in brain computation explain why two patients with the same diagnosis need different treatments.", color: C.tealLight },
  ];

  apps.forEach((a, i) => {
    const col = i % 2;
    const row = Math.floor(i / 2);
    const x = col === 0 ? 0.35 : 5.15;
    const y = row === 0 ? 1.2 : 3.35;

    sl.addShape(pres.shapes.RECTANGLE, {
      x, y, w: 4.45, h: 1.85,
      fill: { color: C.white },
      line: { color: a.color, pt: 2 },
      shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.1 }
    });
    sl.addShape(pres.shapes.RECTANGLE, { x, y, w: 0.55, h: 1.85, fill: { color: a.color }, line: { color: a.color } });
    sl.addText(a.icon, { x, y, w: 0.55, h: 1.85, fontSize: 22, align: "center", valign: "middle", margin: 0 });
    sl.addText(a.title, { x: x + 0.65, y: y + 0.18, w: 3.65, h: 0.4, fontSize: 13, bold: true, color: a.color, margin: 0 });
    sl.addText(a.desc, { x: x + 0.65, y: y + 0.58, w: 3.65, h: 1.1, fontSize: 11.5, color: C.textDark, wrap: true, valign: "top", margin: 0 });
  });
}

// ═══════════════════════════════════════════════════════════
// SLIDE 8 — Closing / Key Takeaways
// ═══════════════════════════════════════════════════════════
{
  const sl = pres.addSlide();
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navyDark }, line: { color: C.navyDark } });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.06, fill: { color: C.teal }, line: { color: C.teal } });

  // Decorative circles
  sl.addShape(pres.shapes.OVAL, { x: -1, y: 3.5, w: 4, h: 4, fill: { color: C.teal, transparency: 90 }, line: { color: C.teal, transparency: 90 } });
  sl.addShape(pres.shapes.OVAL, { x: 8.5, y: -0.5, w: 3, h: 3, fill: { color: C.tealLight, transparency: 90 }, line: { color: C.tealLight, transparency: 90 } });

  sl.addText("SLIDE 6 OF 6", { x: 0.5, y: 0.22, w: 3, h: 0.28, fontSize: 8, color: "4A7090", charSpacing: 1.5, margin: 0 });
  sl.addText("Key Takeaways", { x: 0.5, y: 0.52, w: 9, h: 0.65, fontSize: 30, bold: true, color: C.white, margin: 0 });
  sl.addShape(pres.shapes.RECTANGLE, { x: 0.5, y: 1.15, w: 2.2, h: 0.05, fill: { color: C.accent }, line: { color: C.accent } });

  const takeaways = [
    { num: "01", text: "The brain is a Bayesian prediction machine — it constantly combines beliefs with evidence." },
    { num: "02", text: "Mental illness can be modeled as specific, measurable distortions in that calculation." },
    { num: "03", text: "The same sensory input creates different realities depending on prior beliefs." },
    { num: "04", text: "Computational models bridge neurons → circuits → behavior in a mathematically rigorous way." },
    { num: "05", text: "The field promises objective biomarkers, better drug targets, and personalized treatment." },
  ];

  takeaways.forEach((t, i) => {
    const y = 1.35 + i * 0.8;
    sl.addShape(pres.shapes.OVAL, { x: 0.5, y: y + 0.05, w: 0.5, h: 0.5, fill: { color: C.teal }, line: { color: C.teal } });
    sl.addText(t.num, { x: 0.5, y: y + 0.05, w: 0.5, h: 0.5, fontSize: 10, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
    sl.addText(t.text, { x: 1.15, y, w: 8.1, h: 0.6, fontSize: 13, color: C.white, valign: "middle", wrap: true, margin: 0 });
  });

  sl.addText("Orris · Computational Psychiatry Series · 2026", {
    x: 0.5, y: 5.22, w: 9, h: 0.28, fontSize: 9, color: "3A6080", align: "center", margin: 0
  });
}

// Save
pres.writeFile({ fileName: "/home/daytona/workspace/bayesian-psychiatry-pptx/Bayesian_Inference_Psychiatry.pptx" })
  .then(() => console.log("DONE"))
  .catch(e => { console.error(e); process.exit(1); });
Running Command

cd /home/daytona/workspace/bayesian-psychiatry-pptx && node build.js 2>&1

Running Command

curl -s "https://cdn.orris.care/image-gen/8997e4cfbfa94a0aad751c419e286949.png" …

Editing File

~/bayesian-psychiatry-pptx/build.js

Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/bayesian-psychiatry-pptx/build.js'
Editing File

~/bayesian-psychiatry-pptx/build.js

Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/bayesian-psychiatry-pptx/build.js'
Editing File

~/bayesian-psychiatry-pptx/build.js

Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/bayesian-psychiatry-pptx/build.js'
Running Command

cd /home/daytona/workspace/bayesian-psychiatry-pptx && node build.js 2>&1

Running Command

ls -lh /home/daytona/workspace/bayesian-psychiatry-pptx/Bayesian_Inference_Psych…

Your slide deck is ready (1.3 MB):

Bayesian Inference Psychiatry

Presentation · PPTX


Here is what's inside the 8-slide deck:
SlideTitleContent
1Title SlideDark navy/teal design with gold accent
2What Is Bayesian Inference?The core formula + 3 definition cards (Prior, Evidence, Posterior)
3The Brain as a Prediction Machine4-step numbered loop: Expect → Sense → Error → Update
4Same Face, Different BrainSide-by-side comparison - high vs low prior, with probability math
5When Bayesian Inference Goes Wrong3 disorder cards: Schizophrenia (purple), Depression (blue), Anxiety (orange)
6Full InfographicThe original infographic embedded on a dark background
7Clinical Applications4 application tiles: Diagnosis, Treatment Prediction, Drug Development, Personalized Medicine
8Key Takeaways5 numbered callouts on a dark close slide
The design uses a consistent navy/teal/gold palette throughout, with color-coded disorder cards, numbered step flows, and clean typography suitable for academic or clinical presentations.

Make a write up about the chronophage of cambridge....including its mechanism of working

Searching the Web

Chronophage Cambridge Corpus Clock mechanism how it works John Taylor

Searching the Web

Corpus Clock Cambridge grasshopper escapement mechanism Chronophage details

Reading Web Page

https://en.wikipedia.org/wiki/Corpus_Clock

I now have rich, detailed material. Here is the full write-up.

The Chronophage of Cambridge

The Clock That Eats Time

Standing on the corner of King's Parade and Bene't Street in central Cambridge, mounted on the facade of the Taylor Library at Corpus Christi College, the Chronophage - better known as the Corpus Clock - is one of the most extraordinary public timepieces ever built. It is simultaneously a work of fine art, a philosophical statement, a feat of mechanical engineering, and one of the most deliberately unsettling objects in Britain. Unveiled on 19 September 2008 by the late Professor Stephen Hawking, it has arrested the attention of visitors and locals alike ever since.

Origins and Creator

The clock was conceived, funded, and donated to Corpus Christi College by Dr. John C. Taylor OBE (born 25 November 1936), a British inventor, horologist, and alumnus of the college. Taylor is best known commercially for inventing the bimetallic thermostat strip found in electric kettles - a device present in nearly every kitchen on earth - and his fortune from that invention funded this extraordinary gift.
Taylor returned to Cambridge in 1999 and found the undergraduate library largely unchanged from when he had studied there in the 1950s. He funded a complete transformation of an adjacent former NatWest bank building (designed by architect Horace Francis in 1866), turning it into a modern student library. The old bank's ornate entrance could not simply be bricked up due to planning restrictions, and that architectural constraint became the seed of the clock. Taylor decided to fill the space with something that would stop people in their tracks. The result took five years and roughly £1 million to build.

The Creature: The Chronophage

The clock's dominant and defining feature is a large, grotesque, insectoid creature crouched at the top of a great golden disc. Taylor named it the Chronophage - from the Ancient Greek chronos (time) and phagein (to eat) - literally, the Time Eater.
The creature is approximately one metre long, rendered in stainless steel with gold plating. It resembles a hybrid of a grasshopper and a locust, though Taylor prefers not to pin it to any single species. Its eyes are enormous and golden. Its legs are splayed wide across the top edge of the great escapement wheel. Its mouth opens and closes rhythmically as it appears, in a deeply unnerving way, to chew through the seconds as they pass.
Taylor was explicit about his intention. He wanted the creature to be terrifying:
"Basically I view time as not on your side. He'll eat up every minute of your life, and as soon as one has gone he's salivating for the next."
The mouth opens wide at the 30-second mark of each minute, and snaps shut at the minute's end. The creature occasionally blinks - its gold eyelids snap across its eyes in a fraction of a second - as if in satisfaction at having consumed another minute of a viewer's life.
The clock has been described by critics as "hypnotically beautiful and deeply disturbing" - a phrase that captures the tension at its heart: it is undeniably mesmerising to watch, but the philosophy it embodies is bleak. Students have given it affectionate nicknames - "Hopsy" or "Rosalind" - as a way of making the unsettling thing their own.

The Face and Time Display

The clock face itself is a 1.5-metre diameter disc of polished stainless steel, plated in 24-carat gold, with no hands, no numerals, and no conventional markings of any kind.
Time is displayed by 2,736 blue LEDs arranged behind three sets of concentric slits cut into the golden face:
  • The outermost ring of slits shows seconds
  • The middle ring shows minutes
  • The innermost ring shows hours
When the escapement turns, the lights appear to flash and dart around the face in sweeping arcs, momentarily illuminating the correct time position. The visual effect is striking - the LEDs seem to streak like blue comets around the disc. However, they are not electronically programmed or computer-controlled in any way. The lights are driven purely mechanically: the motion of the escapement wheel directly exposes the slits, and the LEDs simply shine through. There is no digital component. The display is a mechanical illusion that looks digital.
The escapement wheel itself - the great golden disc - was made from a single sheet of steel, with its shape created by a series of precisely controlled explosions in a vacuum. The radiating ripple pattern this process leaves on the surface is a deliberate allusion to the Big Bang: time and the universe radiating outward from a single point.

The Mechanism: How It Works

The Grasshopper Escapement

At the heart of the Corpus Clock is one of the most celebrated mechanisms in the history of horology: the grasshopper escapement, invented by the legendary eighteenth-century clockmaker John Harrison in approximately 1722.
Harrison is best known for solving the "longitude problem" - inventing the marine chronometer that allowed sailors to determine their east-west position at sea with unprecedented accuracy. His grasshopper escapement was one of his technical masterpieces: a low-friction mechanism for converting the back-and-forth motion of a pendulum into the controlled one-directional rotation of a gear wheel, while simultaneously returning energy to the pendulum to keep it swinging. Unlike earlier escapements that used metal-on-metal sliding contact (which created friction, wear, and heat), the grasshopper escapement works by rocking its pallets in and out of the escape wheel teeth with almost no sliding friction.
Taylor's clock is explicitly designed as a homage to Harrison. As Taylor explained:
"No one knows how a grasshopper escapement works. So I decided to turn the clock inside out - to make the escapement the biggest gear on the clock, so you can actually see it working."
In a conventional clock, the escapement is a tiny, hidden mechanism deep inside the movement. Taylor inverted this entirely: the Corpus Clock's escapement wheel is the clock face - the great 1.5-metre golden disc visible to everyone. The creature on top is the escapement itself: its splayed legs act as the pallets that alternately catch and release the teeth of the escape wheel.
The Corpus Clock is believed to hold the record for the world's largest grasshopper escapement.

How the Escapement Works, Step by Step

  1. The pendulum swings. A large pendulum hangs beneath the clock, swinging back and forth. This is the clock's regulating element - the heartbeat.
  2. The pendulum rocks the Chronophage. Each swing of the pendulum transmits energy upward, causing the creature's body to rock. As the creature rocks, its legs - the escapement pallets - alternately catch a tooth on the great escape wheel, hold it momentarily (this is the "tick"), and then release it to advance by one tooth.
  3. The escape wheel turns. Each release allows the wheel to advance by exactly one tooth, driving the gear train. This turns the mechanism that drives the LED display.
  4. The gear train transmits motion. The controlled rotation of the escape wheel passes through a gear train that drives the three concentric rings of slits - the second, minute, and hour indicators on the face.
  5. Energy is returned. The grasshopper escapement simultaneously returns a small impulse of energy back to the pendulum with each beat, compensating for friction losses and keeping the pendulum swinging without requiring the pendulum to do all the work against resistance.

The Inertia Problem - and Its Solution

When Taylor scaled the grasshopper escapement up to 1.5 metres in diameter, he encountered a fundamental engineering problem: the inertia of such a large mechanism was unworkable. A grasshopper escapement of normal size is light and responsive; at this scale, the mass of the rotating components created oscillation amplitudes in the pendulum that could not be controlled and caused the mechanism to run erratically or seize entirely.
Taylor's solution was characteristically inventive. Rather than scale back the design, he engineered a dual-speed correction system: the clock can deliberately run both fast and slow, and uses this capacity to constantly self-correct. The pendulum is allowed to speed up and slow down deliberately, and the LEDs visibly race ahead or drag behind - and then snap back to the correct time.
To keep this corrected to a verifiable standard, the clock receives a periodic synchronisation signal from the atomic clock at the UK's National Physical Laboratory in Teddington. This signal is used to make mechanical corrections that keep the clock accurate to one-hundredth of a second every five minutes.
As a result, the clock is exactly correct once every five minutes. In between, it deliberately wanders - the pendulum stalls, the lights race forward, the seconds appear to skip. Taylor insists this is not a flaw. It is a philosophical feature:
"Nothing works like clockwork."
He views the erratic motion as a more truthful representation of how time is actually experienced - not as a smooth, metronomic flow, but as something that stretches, compresses, rushes, and stalls depending on circumstance.

Power

The clock is entirely mechanically driven - there is no computer, no microprocessor, and no electronic control of any kind over the timekeeping mechanism. Electricity serves only two functions:
  1. To power a motor that winds the mechanism (like winding a conventional clock, but automated)
  2. To power the blue LEDs that shine through the slits

The Blink

The Chronophage's eye-blink is a separate mechanical system. A coiled spring inside a housing mounted on the large gear wheel is wound up by the pendulum's motion through sprag clutches (one-way clutches that capture energy in one direction of swing). A position step prevents overwinding. When the spring has accumulated enough tension, it releases in an instant, driving the gold eyelids across the creature's eyes and back - producing the blink. Because the blink is spring-driven rather than timed, it occurs at irregular intervals, and occasionally twice in rapid succession, giving the impression of a living, breathing creature.

The Hour Chime

There are no bells. The hour is struck by the sound of a chain clanking and dropping into a small wooden coffin concealed at the back of the clock mechanism. The sound is intentionally funereal - a chain falling into a coffin once per hour, marking another hour consumed and gone.

The Philosophy

Taylor did not build the Chronophage as a cheerful tribute to timekeeping. Every design decision was made in service of a single, deliberate philosophical message: time is relentless, indifferent, and consuming - and no minute, once gone, can ever be recovered.
The creature eats. The pendulum falters. The lights race and stall. The chain falls into the coffin. None of this is accidental.
Below the clock, engraved in the stone, is a Latin inscription from the Vulgate Bible - 1 John 2:17:
mundus transit et concupiscentia eius "The world passeth away, and the lust thereof."
Taylor also consciously embedded a reference to Einstein's theory of relativity. When asked how he explained relativity to non-scientists, Einstein reportedly said: "When you sit on a park bench with a pretty girl for an hour, it seems like a minute; but if you sit on a hot stove for a minute, it seems like an hour - that's relativity." The Chronophage's deliberate wandering - its refusal to keep smooth, regular time except every five minutes - is a mechanical enactment of this idea. The passage of time is not objective; it is experienced, and the clock makes that viscerally visible.
The clock is also an homage to mortality. Taylor has said he wanted viewers to feel the urgency of the passing of time - not as an abstraction, but as something the creature is actively stealing from them, moment by moment, while they stand watching.

Special Events

The clock has 50 pre-programmed mechanical "tricks" - unusual behaviours reserved for special occasions. On four specific days each year - John Harrison's birthday (25 March), John Taylor's own birthday (25 November), New Year's Day, and Corpus Christi Day (the college's name day and feast day) - the clock performs extended sequences of irregular behaviour before correcting itself. Because the clock can run up to 10% fast, it is able to rapidly realign after these displays, and this same capacity is used to manage the transition to and from Daylight Saving Time each year.

A Legacy in Steel and Gold

The Corpus Clock draws hundreds of thousands of visitors to Cambridge each year and has become one of the city's most iconic landmarks. It sits in the open air on King's Parade, freely visible at all hours, its golden disc gleaming by day and its blue LEDs glowing in the dark.
Its designer describes it simply: "I tasked myself with creating modern art that actually does something."
In that, Taylor succeeded entirely. The Chronophage is a functional clock of extraordinary mechanical ingenuity, a philosophical provocation in stainless steel and gold, a tribute to a forgotten genius of the eighteenth century, and - above all - a creature that will keep eating time, second by second, for centuries after everyone who has ever stood and watched it is gone.
This is a shared conversation. Sign in to Orris to start your own chat.