propagators
Sussman/Radul propagator networks for constraint propagation and bidirectional
Profile →npx skills add majiayu000/claude-skill-registry --skill propagators --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Propagators Skill > *"The Art of the Propagator" — Radul & Sussman, 2009* ## Core Concept Propagators are autonomous machines that: 1. **Watch** cells for new information 2. **Compute** derived values 3. **Add** information to other cells 4. Repeat until **fixpoint** ``` ┌──────┐ ┌──────┐ │cell A│────────▶│cell B│ └──────┘ prop └──────┘ │ │ │ ┌──────┐ │ └───▶│cell C│◀───┘ └──────┘ ``` **No control flow.** Information flows until nothing new can be derived. ## Why It's Strange 1. **Bidirectional** — constraints work both ways 2. **Monotonic** — cells only gain information, never lose it 3. **Mergeable** — conflicting info produces refined info (or contradiction) 4. **Concurrent** — all propagators run "simultaneously" ## Cell Lattice Cells hold values from a **join-semilattice**: ``` ⊤ (contradiction) /|\ / | \ / | \ 3.14 e √2 \ | / \ | / \|/ ⊥ (nothing) ``` - ⊥ = "I know nothing" - Value = "I know this specific thing" - ⊤ = "Contradiction! Conflicting claims" ## Basic Operations ```scheme ;; Create cells (define-cell a) (define-cell b) (define-cell c) ;; Add propagator: c = a + b (p:+ a b c) ;; Set values (can be in any order!) (add-content a 3) (add-content b 4) ;; c automatical
- Core Concept
- Why It's Strange
- Cell Lattice
- Basic Operations
- Partial Information
- Implementation
- Minimal Propagator in Python
- Scoped Propagators (Gay.jl)
- Dependency-Directed Backtracking
- Applications
- Relationship to Other Models
- Literature
- Neighbor Awareness (Co-Occurrence Patterns)
- Basin Affinity
What does the propagators skill do?
Sussman/Radul propagator networks for constraint propagation and bidirectional
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill propagators --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.