bumpus-narratives
Sheaves on time categories for compositional temporal reasoning. Bumpus
16 stars
Best use case
bumpus-narratives is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Sheaves on time categories for compositional temporal reasoning. Bumpus
Teams using bumpus-narratives should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
$curl -o ~/.claude/skills/bumpus-narratives/SKILL.md --create-dirs "https://raw.githubusercontent.com/plurigrid/asi/main/plugins/asi/skills/bumpus-narratives/SKILL.md"
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/bumpus-narratives/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How bumpus-narratives Compares
| Feature / Agent | bumpus-narratives | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Sheaves on time categories for compositional temporal reasoning. Bumpus
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Bumpus Narratives Skill
> **Trit**: 0 (ERGODIC) - Mediates between verification (-1) and generation (+1)
Sheaves on time categories for compositional reasoning about temporal data.
## Source Papers
- Bumpus, B.M. et al. "Unified Framework for Time-Varying Data" (arXiv:2402.00206)
- Bumpus, B.M. "Compositional Algorithms on Compositional Data" (arXiv:2302.05575)
- Bumpus, B.M. "Structured Decompositions" (arXiv:2207.06091)
- Bumpus, B.M. "Spined Categories" (arXiv:2104.01841)
- Bumpus, B.M. "Cohomological Obstructions" (arXiv:2408.15184)
## Core Concepts
### 1. Narratives as Sheaves
Temporal data = sheaf F: I_N → D where:
- I_N = time category (intervals [a,b] with inclusions)
- D = data category with pullbacks
- Sheaf condition: F([a,b]) = F([a,p]) ×_{F([p,p])} F([p,b])
```
F₁³ := {(x,y) ∈ F₁² × F₂³ | f₁,₂²(x) = f₂,₃²(y)}
```
### 2. Adhesion Filter (FPT Algorithm)
For tree decompositions of width w:
- Complexity: O(f(w) · n) instead of O(2^n)
- Runs on bag boundaries via pullback checking
```julia
function adhesion_filter(sheaf::Sheaf, decomp::TreeDecomp)
for (bag1, bag2) in edges(decomp)
adhesion = bag1 ∩ bag2
if !is_pullback(sheaf, bag1, bag2, adhesion)
return false
end
end
true
end
```
### 3. Cohomological Obstructions
H⁰ detects local-to-global failure:
- H⁰(F) ≠ 0 → obstruction to gluing
- Čech complex on cover of intervals
## Integration with Gay.jl
### Color-Coded Narratives
Each interval [i,j] gets deterministic color:
```julia
color([i,j]) = gay_color(BUMPUS_SEED ⊻ hash(i,j))
```
### GF(3) Conservation
Narrative operations preserve triadic balance:
- **Restriction** (-1): F([a,b]) → F([a,a])
- **Extension** (+1): F([a,a]) → F([a,b])
- **Pullback** (0): F₁³ := fibered product
## Diagram Catalog
20 extracted diagrams from Bumpus papers:
- 17 commutative diagrams
- 2 functor diagrams
- 1 graph diagram
Location: `papers/diagrams/images/bumpus-*.jpg`
## Triadic Composition
```
structured-decomp (-1) ⊗ bumpus-narratives (0) ⊗ world-hopping (+1) = 0 ✓
sheaf-cohomology (-1) ⊗ bumpus-narratives (0) ⊗ triad-interleave (+1) = 0 ✓
persistent-homology (-1) ⊗ bumpus-narratives (0) ⊗ gay-mcp (+1) = 0 ✓
```
## Example: Ice Cream Companies
From the Venice ice cream example (Diagram 1):
```
Time 1: {a₁, a₂, b, c} → Time 2: {a*, b, c} → Time 3: {a*, b}
```
The sheaf tracks:
- Company mergers (a₁, a₂ → a*)
- Company disappearance (c)
- Supplier relationships (graph morphisms)
## API
```julia
using BumpusNarratives
# Create narrative
n = Narrative(TimeCategory(1:10), FinSet)
# Add snapshots
add_snapshot!(n, 1, Set([:a, :b, :c]))
add_snapshot!(n, 2, Set([:a, :b]))
# Check sheaf condition
is_sheaf(n) # true if pullbacks exist
# Compute H⁰ obstruction
obstruction = cech_H0(n)
```
## References
1. **Bumpus et al.** - Time-varying data via sheaves on time categories
2. **Ghrist** - Elementary Applied Topology (Čech cohomology)
3. **Fairbanks** - AlgebraicJulia ecosystem for ACSets
4. **Gay.jl** - Deterministic color chains for diagram coloring
## Scientific Skill Interleaving
This skill connects to the K-Dense-AI/claude-scientific-skills ecosystem:
### Graph Theory
- **networkx** [○] via bicomodule
- Universal graph hub
### Bibliography References
- `general`: 734 citations in bib.duckdb
## Cat# Integration
This skill maps to **Cat# = Comod(P)** as a bicomodule in the equipment structure:
```
Trit: 0 (ERGODIC)
Home: Prof
Poly Op: ⊗
Kan Role: Adj
Color: #26D826
```
### GF(3) Naturality
The skill participates in triads satisfying:
```
(-1) + (0) + (+1) ≡ 0 (mod 3)
```
This ensures compositional coherence in the Cat# equipment structure.
## Forward Reference
- unified-reafference (applies sheaf structure)Related Skills
We are still matching the closest adjacent skills for this page. In the meantime, continue through the full directory.