Babysitter dp-state-designer
Assist in designing optimal DP states and transitions
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/algorithms-optimization/skills/dp-state-designer" ~/.claude/skills/a5c-ai-babysitter-dp-state-designer && rm -rf "$T"
manifest:
library/specializations/algorithms-optimization/skills/dp-state-designer/SKILL.mdsource content
DP State Designer Skill
Purpose
Assist in designing optimal dynamic programming states, transitions, and optimizations for complex DP problems.
Capabilities
- Identify subproblem structure from problem description
- Suggest state representations (dimensions, parameters)
- Derive transition formulas
- Identify optimization opportunities (rolling array, bitmask compression)
- Generate state space complexity estimates
- Detect overlapping subproblems
Target Processes
- dp-pattern-matching
- dp-state-optimization
- dp-transition-derivation
- advanced-dp-techniques
DP Design Framework
- Subproblem Identification: What smaller problems compose the solution?
- State Definition: What parameters uniquely identify a subproblem?
- Transition Formula: How do we combine subproblem solutions?
- Base Cases: What are the trivial subproblems?
- Computation Order: In what order should we solve subproblems?
- Space Optimization: Can we reduce memory usage?
Input Schema
{ "type": "object", "properties": { "problemDescription": { "type": "string" }, "constraints": { "type": "object" }, "examples": { "type": "array" }, "requestType": { "type": "string", "enum": ["fullDesign", "stateOnly", "transitions", "optimize"] } }, "required": ["problemDescription", "requestType"] }
Output Schema
{ "type": "object", "properties": { "success": { "type": "boolean" }, "state": { "type": "object", "properties": { "definition": { "type": "string" }, "parameters": { "type": "array" }, "complexity": { "type": "string" } } }, "transitions": { "type": "array" }, "baseCases": { "type": "array" }, "optimizations": { "type": "array" } }, "required": ["success"] }