cargo
Rust package manager (36 subcommands).
Bridge layer connecting AlgebraicJulia/Catlab.jl to plurigrid/asi. Wires ACSets (attributed C-sets), wiring diagrams, decorated cospans, and the AlgebraicJulia ecosystem (AlgebraicDynamics, AlgebraicPetri, AlgebraicRewriting, Decapodes) into the ASI skill graph. ACSets generalize relational datab...
Full skill instructions
Bridge connecting AlgebraicJulia/Catlab.jl (categorical algebra in Julia) to the ASI skill graph (GF(3)-colored capability system).
The universal data structure. A schema defines objects, homomorphisms (morphisms between objects), and attribute types. An ACSet instance is a functor from that schema category to Set.
# SchGraph: objects V, E; morphisms src: E->V, tgt: E->V
=======
description: >
Bridge connecting AlgebraicJulia/Catlab.jl to skill graphs.
Triggers: ACSets, attributed C-sets, wiring diagrams, decorated cospans,
DPO rewriting on skill graphs, AlgebraicDynamics, AlgebraicPetri,
AlgebraicRewriting, Decapodes, categorical algebra in Julia.
---
# Catlab.jl Interleave
Bridge connecting AlgebraicJulia/Catlab.jl (categorical algebra in Julia) to skill graphs.
## Catlab Core Concepts
### ACSets (Attributed C-Sets)
The universal data structure. A schema defines objects, homomorphisms, and attribute types. An ACSet instance is a functor from that schema category to Set.
```julia
>>>>>>> origin/main
@present SchGraph(FreeSchema) begin
V::Ob; E::Ob
src::Hom(E,V); tgt::Hom(E,V)
end
<<<<<<< HEAD
# Attributed: add attribute types
=======
>>>>>>> origin/main
@present SchWeightedGraph <: SchGraph begin
T::AttrType
weight::Attr(E,T)
end
const WeightedGraph = ACSetType(SchWeightedGraph, index=[:src,:tgt])
<<<<<<< HEAD Every diagram, network, and model in the ecosystem is an ACSet.
SchAttributedWiringDiagram with Box/InPort/OutPort/Wire. Boxes = operations/processes, wires = data flow. Used to compose dynamical systems, Petri nets, and more.
compose, otimes (monoidal product), mcopy, mmerge, delete, create. Enable compositional modeling of open systems.SchAttributedWiringDiagram with Box/InPort/OutPort/Wire. Boxes = operations, wires = data flow. Used to compose dynamical systems, Petri nets, and more.
Functor L: A -> X gives "open" ACSets. Operations: compose, otimes (monoidal product), mcopy, mmerge, delete, create. Enable compositional modeling of open systems.
origin/main
AlgebraicJulia/Catlab.jl (foundation)
<<<<<<< HEAD
|- AlgebraicDynamics.jl <- dynamical systems via decorated cospans
|- AlgebraicPetri.jl <- Petri nets with reaction network semantics
|- AlgebraicRewriting.jl <- DPO/SPO graph rewriting on ACSets
|- CategoricalTensorNetworks.jl <- tensor contractions as string diagrams
|- CombinatorialSpaces.jl <- simplicial sets, discrete exterior calculus
|- DataMigrations.jl <- functorial data migration between schemas
|- DiagrammaticEquations.jl <- physics equations as decorated cospans
|- Decapodes.jl <- multiphysics simulation via DEC
No probabilistic/inference capabilities -- must come from downstream packages or bridges. This is where monad-bayes-asi-interleave fills the gap.
algebraic-dynamics(-1) otimes catlab-asi-interleave(0) otimes algebraic-rewriting(+1) = 0
Dynamics (-1) x Foundation (0) x Rewriting (+1) = balanced categorical stack.
Model the ASI skill graph as an ACSet for relational querying:
@present SchASISkills(FreeSchema) begin
=======
|- AlgebraicDynamics.jl -- dynamical systems via decorated cospans
|- AlgebraicPetri.jl -- Petri nets with reaction network semantics
|- AlgebraicRewriting.jl -- DPO/SPO graph rewriting on ACSets
|- CategoricalTensorNetworks.jl -- tensor contractions as string diagrams
|- CombinatorialSpaces.jl -- simplicial sets, discrete exterior calculus
|- DataMigrations.jl -- functorial data migration between schemas
|- DiagrammaticEquations.jl -- physics equations as decorated cospans
|- Decapodes.jl -- multiphysics simulation via DEC
@present SchSkills(FreeSchema) begin
>>>>>>> origin/main
Skill::Ob; Edge::Ob; Hub::Ob
src::Hom(Edge,Skill); tgt::Hom(Edge,Skill)
hub_ref::Hom(Hub,Skill)
SkillName::AttrType; TritVal::AttrType; Category::AttrType
name::Attr(Skill,SkillName)
<<<<<<< HEAD
trit::Attr(Skill,TritVal) # -1, 0, +1
category::Attr(Skill,Category) # development | meta | ai-agents | ...
end
const ASISkills = ACSetType(SchASISkills, index=[:src,:tgt,:hub_ref])
skills = ASISkills()
# Conjunctive query: all GF(3)-balanced triads
gf3_triads(s) = filter(parts(s,:Edge)) do e
t_src = s[s[e,:src], :trit]
t_tgt = s[s[e,:tgt], :trit]
(t_src + t_tgt) % 3 == 0
end
trit::Attr(Skill,TritVal) category::Attr(Skill,Category) end
const Skills = ACSetType(SchSkills, index=[:src,:tgt,:hub_ref])
### DPO Rewriting for Safe Skill Graph Mutation
>>>>>>> origin/main
```julia
using AlgebraicRewriting
# DPO rule: add bridge skill to hub (never delete)
<<<<<<< HEAD
# L -> K <- R where |R| >= |L| always
add_bridge_rule = Rule(
ACSetTransformation(L, K), # L: match hub pattern
ACSetTransformation(R, K), # R: hub + new bridge skill
=======
# L -> K <- R where |R| >= |L| always (monotonic)
add_bridge_rule = Rule(
ACSetTransformation(L, K),
ACSetTransformation(R, K),
>>>>>>> origin/main
)
new_skills = rewrite(add_bridge_rule, current_skills)
@assert nparts(new_skills, :Skill) >= nparts(current_skills, :Skill)
<<<<<<< HEAD SPO rewriting available for partial matches (non-adhesive contexts).
Catlab's wiring diagrams and DisCoPy's string diagrams are the same mathematical object:
# ASI skill composition as wiring diagram
=======
### Wiring Diagram Composition
```julia
# Skill composition as wiring diagram
>>>>>>> origin/main
wd = @program SchSkillOp (validator::Val, coordinator::Coord, generator::Gen) begin
validated = validator(input)
coordinated = coordinator(validated)
result = generator(coordinated)
return result
end
<<<<<<< HEAD
# This WiringDiagram ACSet can be exported to DisCoPy format
Bridge: Julia WiringDiagram ACSet <-> Python DisCoPy Diagram via JSON serialization.
CatColab is the web frontend to Catlab. Skills: catcolab-ologs, catcolab-petri-nets, catcolab-stock-flow, catcolab-causal-loop, catcolab-decapodes. All CatColab models are ACSets underneath.
Decorated cospans give OpenGraph a hypergraph category structure. Operations: compose (sequential), otimes (parallel), mcopy (fan-out), mmerge (fan-in), delete, create. Interaction nets are the computational model; decorated cospans are the categorical semantics.
=======
### AlgebraicPetri Reaction Networks
>>>>>>> origin/main
```julia
using AlgebraicPetri
<<<<<<< HEAD
# Chemical reaction network as Petri net ACSet
=======
>>>>>>> origin/main
sir_model = LabelledPetriNet([:S,:I,:R],
:infection => ((:S,:I) => (:I,:I)),
:recovery => (:I => :R)
)
<<<<<<< HEAD
# Compose via decorated cospans
open_sir = Open(sir_model, [:S], [:R])
Connects to crn-topology for topological analysis of reaction networks.
======= open_sir = Open(sir_model, [:S], [:R])
### AlgebraicDynamics
>>>>>>> origin/main
```julia
using AlgebraicDynamics, Catlab
<<<<<<< HEAD
# Open continuous dynamical system
=======
>>>>>>> origin/main
rb_system = ContinuousResourceSharer{Float64}(
[:temperature, :velocity, :pressure],
(u, p, t) -> rb_dynamics(u, p, t)
)
<<<<<<< HEAD
# Compose via wiring diagram
=======
>>>>>>> origin/main
full_system = oapply(boundary_diagram, [rb_system, thermal_bc])
solution = solve(ODEProblem(full_system, u0, tspan), Tsit5())
<<<<<<< HEAD
Catlab requires Julia >= 1.10. Entry points: julia-scientific, julia-gay. Enzyme.jl autodiff works with AlgebraicDynamics ODE solvers.
Catlab implements presentable categories, limits/colimits, Kan extensions. The topos-theoretic skills (topos-unified, topos-generate, effective-topos) provide the foundation that Catlab operationalizes in code.
Catlab has no built-in probabilistic inference. monad-bayes-asi-interleave provides SMC/MCMC/PMMH/RMSMC stacks. The bridge: Catlab composes the model structure, monad-bayes performs inference on it.
AlgebraicPetri reaction networks model biochemical pathways. Protein folding/docking pipelines from vertex-ai-protein-interleave can use Catlab ACSets to represent reaction networks, pathway composition, and multi-target drug interaction graphs.
The ASI skill graph itself is naturally an ACSet:
# Skills = objects, edges = morphisms, GF(3) trits = attributes
@present SchASIGraph(FreeSchema) begin
Skill::Ob
Edge::Ob
src::Hom(Edge,Skill)
tgt::Hom(Edge,Skill)
# Attribute types
Name::AttrType; Trit::AttrType; Role::AttrType; Version::AttrType
# Attributes
name::Attr(Skill,Name)
trit::Attr(Skill,Trit) # GF(3): -1, 0, +1
role::Attr(Skill,Role) # BRIDGE | HUB | LEAF | ERGODIC
version::Attr(Skill,Version)
edge_type::Attr(Edge,Name) # :citation | :behavioral | :trit_equiv
end
# Invariants as ACSet constraints:
# 1. MONOTONIC: nparts(g, :Skill) >= 1360 (never decreases)
# 2. GF3_CONSERVATION: for any triad (s1,s2,s3), sum of trits = 0 mod 3
# 3. HUB_REACHABILITY: 17 hub skills; every leaf reachable from >= 1 hub
This enables: conjunctive queries over the skill graph, functorial data migration between schema versions, DPO rewriting for safe skill addition, and wiring diagram visualization of skill pipelines.
| Story (task) | Catlab Connection |
|---|---|
| Task 21: Categorical worlding kit | Catlab.jl engine + CatColab UI + UnwiringDiagrams.jl |
| Task 22: Compositional game theory | Wiring diagrams encode open game composition |
| Task 23: Nonlinear dynamics observatory | AlgebraicDynamics for attractor ODE composition |
| Task 24: ASI skill federation | ACSet as skill registry; DPO rewriting for safe addition |
| Task 20: Self-walking proof pipeline | AlgebraicRewriting as proof rewrite system |
| Capability | Status | Filled By |
|---|---|---|
| Probabilistic inference on ACSets | MISSING in Catlab | monad-bayes-asi-interleave |
| GPU-accelerated ACSet operations | MISSING | Future: CUDA.jl + ACSet kernels |
| ACSet <-> DuckDB serialization | PARTIAL | duckdb-ies (Parquet round-trip) |
| ACSet <-> JSON-RPC for MCP | MISSING | Need: syrup/JSON bridge for ACSets |
| Real-time collaborative ACSets | PARTIAL | CatColab (web only, no MCP) |
| ACSet diff/merge (CRDT semantics) | MISSING | crdt skill + DPO rewriting |
| Tensor network contraction at scale | MISSING | CategoricalTensorNetworks exists but no GPU |
| Discrete exterior calculus on DGX | MISSING | Decapodes + CUDA offload needed |
acsets / acsets-relational-thinking / acsets-algebraic-databases -- core ACSet skillsalgebraic-rewriting / topos-adhesive-rewriting -- DPO/SPO rewriting on ACSetsdiscopy / discopy-operads -- Python string diagram companion to Catlabcatcolab-ologs / catcolab-petri-nets / catcolab-stock-flow / catcolab-decapodes -- CatColab frontendsinteraction-nets -- computational model for decorated cospan compositioncrn-topology -- topological analysis of AlgebraicPetri reaction networksdynamical-system-functor / coupled-system -- AlgebraicDynamics integrationjulia-scientific / julia-gay -- Julia ecosystem entry pointstopos-unified / topos-generate / effective-topos -- topos-theoretic foundationsmonad-bayes-asi-interleave -- fills probabilistic inference gapvertex-ai-protein-interleave -- protein reaction networks via AlgebraicPetristructured-decomp -- structured decompositions = open graphs (Catlab cospans)enzyme-autodiff -- Enzyme.jl autodiff for AlgebraicDynamics simulationwolframite-compass -- Wolfram -> Catlab via Julia bridgestring-diagram-rewriting-protocol -- rewriting protocol for wiring diagrams
=======Catlab requires Julia >= 1.10. Enzyme.jl autodiff works with AlgebraicDynamics ODE solvers.
| Capability | Status | Notes |
|---|---|---|
| Probabilistic inference on ACSets | MISSING in Catlab | Use monad-bayes bridge |
| GPU-accelerated ACSet operations | MISSING | Future: CUDA.jl + ACSet kernels |
| ACSet <-> DuckDB serialization | PARTIAL | Parquet round-trip |
| ACSet <-> JSON-RPC for MCP | MISSING | Need syrup/JSON bridge |
| ACSet diff/merge (CRDT semantics) | MISSING | DPO rewriting approach |
origin/main
Rust package manager (36 subcommands).
Translate Figma nodes into production-ready code with 1:1 visual fidelity using the Figma MCP workflow (design context, screenshots, assets, and project-convention translation). Trigger when the user provides Figma URLs or node IDs, or asks to implement designs or components that must match Figma...
**Status**: 🌳 Production Ready (upstream in StringZilla v3+) **Type**: High-Performance String Operations / SIMD-Accelerated Text Processing **Principle**: Zero-copy views, SIMD/SWAR acceleration, deterministic hashing **Frame**: Cross-language interoperability (C, C++, Python, Rust, Go, Swift, ...
Conformal Geometric Algebra (CGA) for circles, spheres, and Möbius transformations
Verifies code implements exactly what documentation specifies for blockchain audits. Use when comparing code against whitepapers, finding gaps between specs and implementation, or performing compliance checks for protocol implementations.
Systems programming and performance optimization using Zig. Provides low-level abstractions, memory-safe compiled code, and performance benchmarking. Use for system-level operations, optimization, and interoperability with C/POSIX APIs.
PayPal MCP server integration for invoices, payments, subscriptions, disputes, and transaction reporting via @paypal/mcp.
Unison language - content-addressed functional programming with abilities for effects, distributed computing, and structural types. Use for pure functional code, effect management, distributed systems, and refactoring-safe codebases.
Google Tasks management via TasksACSet. Transforms task operations into GF(3)-typed Interactions, routes to triadic queues, detects saturation for task-zero-as-condensed-state.
World C Skill
Syrup binary serialization for OCapN/CapTP wire format. Canonical encoding for capability messages.
Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience