Skip to content
Back to skills

Godel Machine

ASecurity

Schmidhuber's Gödel Machine: Self-improving systems that prove their own improvements. Darwin Gödel Machine (DGM) combines evolution with formal verification.

  • 61 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 6, 2026
ai-agentspythonrustgoruby

Security analysis

A100/100

Scanned September 6, 2026

npx -y skills add plurigrid/asi --skill godel-machine --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Godel Machine?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Godel Machine
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/plurigrid-godel-machine/badge)](https://www.skillsdirectory.com/skills/plurigrid-godel-machine)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: godel-machine
description: "Schmidhuber's Gödel Machine: Self-improving systems that prove their own improvements. Darwin Gödel Machine (DGM) combines evolution with formal verification."
trit: 1
polarity: PLUS
source: "Schmidhuber 2003 + Zhang et al. 2025 (Darwin Gödel Machine)"
technologies: [Python, Lean4, MLX]
---

# Gödel Machine Skill

> *"A Gödel Machine can rewrite any part of itself, including the learning algorithm, provided it can first prove that the rewrite is beneficial."*
> — Jürgen Schmidhuber

## Overview

The **Gödel Machine** is a self-improving system that:
1. Contains a **formal proof system** (e.g., Lean4, Coq)
2. Has a **utility function** defining "better"
3. Can **rewrite any part of itself** if it proves the rewrite improves utility
4. The proof constraint prevents reckless self-modification

## Core Architecture

```
┌─────────────────────────────────────────────────────┐
│                  GÖDEL MACHINE                      │
├─────────────────────────────────────────────────────┤
│  ┌─────────────┐    ┌─────────────┐                │
│  │   Policy    │───▶│   Prover    │                │
│  │  (current)  │    │  (verifier) │                │
│  └─────────────┘    └──────┬──────┘                │
│         ▲                   │                       │
│         │            ┌──────▼──────┐                │
│         │            │  Candidate  │                │
│         │            │   Policy    │                │
│         │            └──────┬──────┘                │
│         │                   │                       │
│  ┌──────┴──────┐     ┌──────▼──────┐               │
│  │   Rewrite   │◀────│  Utility    │               │
│  │   if proof  │     │   Check     │               │
│  └─────────────┘     └─────────────┘               │
└─────────────────────────────────────────────────────┘
```

## Darwin Gödel Machine (DGM)

Combines **evolutionary search** with **formal proofs**:

```python
class DarwinGodelMachine:
    """
    DGM: Open-ended evolution of self-improving agents.
    
    Archive of agents, LLM-based mutation, fitness evaluation,
    keep if novel and beneficial.
    """
    
    def __init__(self, initial_agent: Agent, prover: TheoremProver):
        self.archive = [initial_agent]
        self.prover = prover
        self.generation = 0
    
    def evolve_step(self) -> Agent:
        # Sample parent from archive (fitness-proportionate)
        parent = self.sample_archive()
        
        # LLM-based mutation
        child = self.llm_mutate(parent)
        
        # Evaluate on benchmarks
        fitness = self.evaluate(child)
        
        # Optionally: verify improvement formally
        if self.prover.can_prove(f"utility({child}) > utility({parent})"):
            child.proven = True
        
        # Add if novel and good
        if self.is_novel(child) and fitness > 0:
            self.archive.append(child)
        
        return child
    
    def llm_mutate(self, agent: Agent) -> Agent:
        """Use LLM to generate improved version."""
        prompt = f"""
        Current agent code:
        {agent.code}
        
        Current fitness: {agent.fitness}
        
        Suggest an improvement to make this agent better.
        Return only the improved code.
        """
        
        new_code = self.llm.generate(prompt)
        return Agent(code=new_code, generation=self.generation + 1)
```

## GF(3) Triads

```
# Self-Improvement Triads
kolmogorov-compression (-1) ⊗ cognitive-superposition (0) ⊗ godel-machine (+1) = 0 ✓
proofgeneral-narya (-1) ⊗ self-evolving-agent (0) ⊗ godel-machine (+1) = 0 ✓
sheaf-cohomology (-1) ⊗ epistemic-arbitrage (0) ⊗ godel-machine (+1) = 0 ✓
```

## Integration with Interaction Entropy

```ruby
module GodelMachine
  def self.attempt_improvement(current_policy, seed)
    gen = SplitMixTernary::Generator.new(seed)
    color = gen.next_color
    
    # Generate candidate via color-guided mutation
    candidate = mutate(current_policy, color)
    
    # Attempt proof
    proof = attempt_prove(candidate, current_policy)
    
    if proof[:success]
      {
        improved: true,
        new_policy: candidate,
        proof: proof[:theorem],
        trit: 1  # Generator role
      }
    else
      { improved: false, reason: proof[:failure_reason] }
    end
  end
end
```

## Key Properties

1. **Halting Problem**: Cannot prove all beneficial rewrites (incompleteness)
2. **Safety**: Only rewrites with proofs are applied
3. **Bootstrapping**: Initial prover must be trustworthy
4. **Asymptotic Optimality**: Converges to optimal policy (given enough time)

## References

1. Schmidhuber, J. (2003). "Gödel Machines: Self-Referential Universal Problem Solvers."
2. Zhang, J. et al. (2025). "Darwin Gödel Machine: Open-Ended Evolution of Self-Improving Agents."
3. Schmidhuber, J. (2007). "New Millennium AI and the Convergence of History."

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…