ies/music-topos/.codex/skills/kan-extensions/SKILL.md
Kan Extensions Skill (ERGODIC 0)
npx skillsauth add plurigrid/asi kan-extensionsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Universal schema migration via left/right Kan extensions
Trit: 0 (ERGODIC)
Color: #26D826 (Green)
Role: Coordinator/Transporter
Kan extensions are the "best approximation" to extending a functor along another:
F
C ────→ D
│ ↑
K │ │ Lan_K F (left Kan extension)
↓ │ Ran_K F (right Kan extension)
C'
Adjunction: Lan_K ⊣ Res_K ⊣ Ran_K
(Lan_K F)(d) = colim_{(c,f: K(c)→d)} F(c)
(Ran_K F)(d) = lim_{(c,f: d→K(c))} F(c)
using Catlab, DataMigrations
# Schema migration via Kan extension
# K: SchemaOld → SchemaNew
# F: SchemaOld → Set (instance)
# Lan_K F: SchemaNew → Set (migrated instance)
function left_kan_migrate(K::DataMigration, instance::ACSet)
# Compute colimit for each new object
return colimit_representables(K, instance)
end
function right_kan_migrate(K::DataMigration, instance::ACSet)
# Compute limit for each new object
return limit_representables(K, instance)
end
@migration SchemaV1 SchemaV2 begin
# Lan extends forward
NewTable => @join begin
old::OldTable
# computed from old structure
end
end
@migration SchemaV2 SchemaV1 begin
# Ran projects backward
OldTable => @join begin
new::NewTable
# projected from new structure
end
end
For any H: C' → D with natural transformation α: F → H ∘ K
∃! β: Lan_K F → H such that α = β ∘ K ∘ η
sheaf-cohomology (-1) ⊗ kan-extensions (0) ⊗ free-monad-gen (+1) = 0 ✓
temporal-coalgebra (-1) ⊗ kan-extensions (0) ⊗ operad-compose (+1) = 0 ✓
persistent-homology (-1) ⊗ kan-extensions (0) ⊗ topos-generate (+1) = 0 ✓
# Migrate schema forward (Lan)
just kan-migrate-forward old.json new_schema
# Migrate schema backward (Ran)
just kan-migrate-backward new.json old_schema
# Check universal property
just kan-universal K F H
| Concept | As Kan Extension | |---------|------------------| | Colimit | Lan along ! : C → 1 | | Limit | Ran along ! : C → 1 | | Yoneda | Ran along 1_C | | Adjoint | Lan/Ran along identity | | End | Ran along Δ | | Coend | Lan along Δ |
development
BDD-Driven Mathematical Content Verification Skill Combines Behavior-Driven Development with mathematical formula extraction, verification, and transformation using: - Cucumber/Gherkin for specification - RSpec for implementation verification - mathpix-gem for LaTeX/mathematical content extraction - Pattern matching on syntax trees for formula validation Enables iterative discovery and verification of mathematical properties through executable specifications.
tools
Meta-skill that generates domain-specific AI skills from tool documentation
development
Code Query with AI-enhanced deterministic analysis via SplitMix ternary classification
development
Directed Yoneda lemma as directed path induction. Riehl-Shulman's key insight for synthetic ∞-categories.