# Structured Decomp

> StructuredDecompositions.jl: Sheaves on tree decompositions for FPT algorithms

- Skill: `majiayu000/structured-decomp` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/structured-decomp`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/structured-decomp/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/structured-decomp

---


# Structured Decompositions Skill

## Core Concepts

**StrDecomp** = Functor `d: ∫G → C` where:
- ∫G = category of elements of shape graph
- C = target category (Graph, FinSet, etc.)

```julia
using StructuredDecompositions

# Create decomposition from graph
d = StrDecomp(graph)

# Access components
bags(d)           # Local substructures
adhesions(d)      # Overlaps
adhesionSpans(d)  # Span morphisms
```

## The 𝐃 Functor

Lifts decision problems to decomposition space:
```julia
# Define problem as functor
k_coloring(G) = homomorphisms(G, K_k)

# Lift and solve
solution = 𝐃(k_coloring, decomp, CoDecomposition)
(answer, _) = decide_sheaf_tree_shape(k_coloring, decomp)
```

## FPT Complexity

Runtime: O(f(width) × n) where width = max adhesion size

## GF(3) Triads

```
dmd-spectral (-1) ⊗ structured-decomp (0) ⊗ koopman-generator (+1) = 0 ✓
sheaf-cohomology (-1) ⊗ structured-decomp (0) ⊗ colimit-reconstruct (+1) = 0 ✓
```

## References

- Bumpus et al. arXiv:2207.06091
- algebraicjulia.github.io/StructuredDecompositions.jl

