constraint-generalization
Generalization and composition of constraints across navigators
npx skills add majiayu000/claude-skill-registry --skill constraint-generalization --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.
# Constraint Generalization ## Core Concept Given proven constraints on individual paths, **synthesize new constraints** that hold across composed paths. This skill moves from "validation" (rejecting bad paths) to "generation" (creating better paths). Example: If path A proves outputs are even, and path B proves outputs are positive, the **composed path AB proves outputs are both even AND positive**. ## Why Constraint Generalization? Without it, constraints are lost during composition: ```julia nav_even = @late_nav([ALL, pred(iseven)]) # proves: even nav_positive = @late_nav([ALL, pred(x > 0)]) # proves: positive # Compose them: nav_composed = compose_navigators(nav_even, nav_positive) # What can we prove about the result? # Without generalization: nothing! Constraints are forgotten. # With generalization: # => Proves: even(x) ∧ positive(x) # => More refined type: EvenPositiveInt ``` This **refinement typing** enables: - **Automatic constraint propagation** downstream - **Fewer re-checks** (prove once, use many times) - **Smarter composition** (know which paths can combine) - **Proof generation** (formal certificates for constraints) ## Architecture ### Constraint Representation ``
- Core Concept
- Why Constraint Generalization?
- Architecture
- Constraint Representation
- Constraint Composition
- Constraint Lattice
- API
- Constraint Extraction
- Constraint Generalization
- Refinement Types
- Proof Certificates
- Constraint Propagation
- Integration with 3-MATCH
- Integration with Type Inference
What does the constraint-generalization skill do?
Generalization and composition of constraints across navigators
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill constraint-generalization --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.
