Claude-skill-registry lattice-api
API quick-reference for key lattice subsystems (FP, Game Theory, SAT, Optics, Statistics, CLP). Use when you need function signatures, module contents, or usage examples for a specific subsystem. Invoke when working with game theory, constraint solving, optics, parsers, or other advanced lattice features.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/lattice-api" ~/.claude/skills/majiayu000-claude-skill-registry-lattice-api && rm -rf "$T"
skills/data/lattice-api/SKILL.mdLattice API Quick Reference
Detailed API documentation for the major lattice subsystems. Use
/lattice-search for discovery; use this skill for API details once you know what subsystem you need.
FP Toolkit (lattice/fp/
)
lattice/fp/Monads, parsers, streams, zippers, game theory, symbolic math, control systems (state-space, Kalman filters, PID, stability analysis), term rewriting.
(li 'fp) ; Full description (le 'fp) ; All exports
Regex/FSM (lattice/fp/parsing/
)
lattice/fp/parsing/Regex→NFA compilation via Thompson's construction.
Features:
- Quantifier ranges
{n,m} - Anchors
/^$ - Lookahead
/(?=...)(?!...)
Note: Anchors and lookahead require position-aware NFA execution;
nfa->dfa and fsm-minimize skip conversion when assertions present. Use regex-accepts? or fsm-accepts? which auto-detect and use appropriate runner.
(regex-accepts? "^foo" "foobar") ; #t (regex-accepts? "foo$" "foobar") ; #f
Game Theory (lattice/fp/game/
)
lattice/fp/game/Rich set of ready-to-use algorithms for cooperative games, voting, matching, and fair division.
| Module | Contents |
|---|---|
| , , , |
| , , |
| , , |
| (proportional approval), |
| Gale-Shapley stable matching, hospital-residents |
| Envy-free allocation, proportional division |
These are pure functions — import them into boundary code for applications like QA triage, resource allocation, or voting systems.
Example: Shapley Value
(load "lattice/fp/game/coop-games.ss") ;; Define a cooperative game: 3 players, characteristic function (define game (make-coop-game 3 (lambda (coalition) (cond [(equal? coalition '(1 2 3)) 100] ; Grand coalition [(equal? coalition '(1 2)) 70] [(equal? coalition '(1 3)) 50] [(equal? coalition '(2 3)) 60] [else 0])))) (shapley-value game) ; => fair allocation to each player
Statistics (lattice/statistics/
)
lattice/statistics/| Category | Functions |
|---|---|
| Regression | Linear, GLM (IRLS), ridge, lasso, elastic net |
| Time Series | AR, MA, exponential smoothing |
| Hypothesis Testing | t-test, F-test, ANOVA, chi-squared |
(li 'statistics) ; Full description (le 'statistics) ; All exports
CLP(FD) (lattice/fp/clp/
)
lattice/fp/clp/cKanren-style constraint logic programming with finite domains.
Features:
- Finite domain constraints
- Arithmetic constraints (
,fd-<
, etc.)fd-+ - Global constraints (
)all-different - Intelligent search strategies
Classic problems: N-Queens, Sudoku, cryptarithmetic
(load "lattice/fp/clp/clpfd.ss") ;; N-Queens (run* (q) (fresh (q1 q2 q3 q4) (== q (list q1 q2 q3 q4)) (fd-dom q1 '(1 2 3 4)) (fd-dom q2 '(1 2 3 4)) (fd-dom q3 '(1 2 3 4)) (fd-dom q4 '(1 2 3 4)) (all-different q) (queens-safe q)))
SAT/MaxSAT (lattice/fp/sat/
)
lattice/fp/sat/CDCL SAT solver with clause learning, Two-Watched Literals, VSIDS branching. MaxSAT extension for optimization.
| Function | Purpose |
|---|---|
| Check satisfiability, returns , , or |
| Get satisfying assignment |
| Encode k-coloring as SAT |
| Encode N-Queens as SAT |
| Create MaxSAT with hard/soft clauses |
| Find minimum-cost assignment |
| Encode as MaxSAT |
| Encode as MaxSAT |
| Diagnosis: find clauses to remove |
Example: Graph Coloring
(load "lattice/fp/sat/sat.ss") (load "lattice/fp/sat/applications.ss") ;; 3-color a graph (define edges '((1 . 2) (2 . 3) (3 . 1))) (define coloring-cnf (graph-coloring 3 3 edges)) (sat-solve coloring-cnf) ; => 'sat or 'unsat (sat-model coloring-cnf) ; => variable assignments
Optics (lattice/fp/optics/
)
lattice/fp/optics/Complete optics tower for composable data access.
| Module | Contents |
|---|---|
| Core tower: Iso, Lens, Prism, Affine, Traversal, Fold, Getter, Setter, Grate |
| CAS block optics: , , , type prisms |
| Profunctor encoding: Strong/Choice/Closed/Wander, , , , |
| Reversible migrations: , , , |
| Field DSL: , , |
| CAS migrations: , , bottom-up tree traversal |
Operators
| Operator | Purpose | Example |
|---|---|---|
| view | |
| preview (Maybe) | |
| to-list | |
| set | |
| modify | |
| pipe (left-to-right) | |
| compose (left-to-right) | |
Example: Nested Access
(load "lattice/fp/optics/optics.ss") ;; View nested position (^. body body-pos-lens) ;; Modify x-coordinate of position (& body (%~ (>>> body-pos-lens vec2-x-lens) add1)) ;; Get all velocities from world (^.. world (>>> world-all-bodies body-vel-lens))
Traced Optics (lattice/autodiff/traced-optics.ss
)
lattice/autodiff/traced-optics.ssCompute gradients through optic-focused paths — combines autodiff with optics.
(load "lattice/autodiff/traced-optics.ss") ;; Gradient of loss w.r.t. nested parameter via optic composition (optic-gradient loss-fn (>>> outer-lens inner-lens) structure) ;; Gradient descent step at optic focus (optimize-at lens-fst '(5.0 . ignored) (lambda (p) (traced-sq (car p))) 0.1) ;; => (4.0 . ignored) ; 5 - 0.1 * 2 * 5 = 4 ;; Gradients for all traversal targets (optic-gradient-list loss-fn traversal-each '(1 2 3))
Skill Manifests
Each lattice skill has a
manifest.sexp declaring metadata:
(skill <name> (version "x.y.z") (tier 0-2) ; 0=foundational, 1=intermediate, 2+=advanced (path "lattice/<name>") (purity total|partial) ; total=pure, partial=may have effects (stability stable|experimental) (fuel-bound "O(...)") ; Complexity bound (deps (<skill> ...)) ; Skill-level dependencies (description "...") (keywords (<keyword> ...)) ; For search (aliases (<alias> ...)) ; Alternative names (exports (<module> <symbol> ...) ...) (modules (<name> "<file>" "<desc>") ...))