Asi lhott-cohesive-linear
Cohesive Linear HoTT patterns for interaction entropy with diagram generation. Implements Schreiber's cohesive modalities (♯,♭,ʃ) and Riley's linear modality (♮) for quantum-classical bridging.
install
source · Clone the upstream repo
git clone https://github.com/plurigrid/asi
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/plurigrid/asi "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/asi/skills/lhott-cohesive-linear" ~/.claude/skills/plurigrid-asi-lhott-cohesive-linear-4b8ec2 && rm -rf "$T"
manifest:
plugins/asi/skills/lhott-cohesive-linear/SKILL.mdsource content
LHoTT Cohesive Linear Skill
Synthesizes Urs Schreiber's cohesive ∞-topos framework with Mitchell Riley's linear HoTT for interaction entropy formalization.
Modal Operators
| Modality | Symbol | Action | Interaction Use |
|---|---|---|---|
| Sharp | ♯ | Discretize | Extract trit from color |
| Flat | ♭ | Embed continuously | Full LCH embedding |
| Shape | ʃ | Quotient by homotopy | Walk trajectory class |
| Linear | ♮ | Self-adjoint tangent | One-use interaction |
GF(3) Triad Placement
This skill is ERGODIC (0), forming triads with:
persistent-homology (-1) ⊗ lhott-cohesive-linear (0) ⊗ topos-generate (+1) = 0 ✓ sheaf-cohomology (-1) ⊗ lhott-cohesive-linear (0) ⊗ gay-mcp (+1) = 0 ✓ three-match (-1) ⊗ lhott-cohesive-linear (0) ⊗ rubato-composer (+1) = 0 ✓
Core Types (Pseudo-HoTT)
-- Cohesive interaction type CohesiveInteraction : Type content : String hash : ♯ SHA256 -- discrete seed : ♭ UInt64 -- continuous embedding color : ♮ LCH -- linear (used once) position : ʃ (ℤ × ℤ) -- shape-invariant -- Linear function (no copy/delete) walk_step : CohesiveInteraction ⊸ Position × Color -- Bunched triplet (entangled context) Γ₁ ⊗ Γ₂ ⊗ Γ₃ ⊢ conserved : GF3Zero where trit(Γ₁) + trit(Γ₂) + trit(Γ₃) ≡ 0 (mod 3)
Diagram Generation
Mermaid Templates
Cohesive Quadruple:
flowchart LR subgraph "Cohesive ∞-Topos H" A[Type] -->|ʃ shape| B[Shape Type] A -->|♭ flat| C[Codiscrete] C -->|Γ sections| D[Discrete] D -->|♯ sharp| A end style A fill:#26D826 style B fill:#2626D8 style C fill:#D82626 style D fill:#2626D8
Linear Walk:
stateDiagram-v2 [*] --> I1: seed₁ I1 --> I2: ⊸ (linear) I2 --> I3: ⊸ (linear) I3 --> [*]: triplet complete note right of I1: trit = +1 note right of I2: trit = 0 note right of I3: trit = -1
Bunched Context Tree:
graph TD Root["Γ (context)"] --> A["Γ₁ ⊗ Γ₂"] Root --> B["Γ₃"] A --> C["I₁ (+1)"] A --> D["I₂ (0)"] B --> E["I₃ (-1)"] style C fill:#D82626 style D fill:#26D826 style E fill:#2626D8
Ruby Integration
module LHoTTCohesiveLinear # Modalities SHARP = ->(x) { { trit: x[:trit] } } # ♯ discretize FLAT = ->(x) { x } # ♭ full embed SHAPE = ->(x) { x[:position] } # ʃ trajectory LINEAR = ->(x) { x.dup.freeze } # ♮ freeze for one use def self.cohesive_interaction(content) hash = Digest::SHA256.hexdigest(content) seed = hash[0..15].to_i(16) gen = SplitMixTernary::Generator.new(seed) color = gen.next_color { content: content, hash: SHARP.call({ trit: color[:trit] }), # ♯ seed: FLAT.call(seed), # ♭ color: LINEAR.call(color), # ♮ position: nil # computed by walk } end def self.linear_walk_step(interaction, walker) raise "Linear resource already consumed" if interaction.frozen? result = walker.step!(interaction) interaction.freeze # consume linear resource result end end
Julia Integration
# ACSets schema for LHoTT @present SchLHoTT(FreeSchema) begin CohesiveType::Ob LinearType::Ob sharp::Hom(CohesiveType, CohesiveType) # ♯ flat::Hom(CohesiveType, CohesiveType) # ♭ shape::Hom(CohesiveType, CohesiveType) # ʃ linear::Hom(CohesiveType, LinearType) # ♮ Trit::AttrType trit_attr::Attr(LinearType, Trit) end
Hy/DiscoHy Integration
(import [discopy [Ty Box Diagram monoidal]]) (defn cohesive-box [name input output modality] "Create DisCoPy box with modality annotation" (setv color (case modality "sharp" "#2626D8" "flat" "#D82626" "shape" "#26D826" "linear" "#FFAA00")) (Box name (Ty input) (Ty output) :color color)) (defn lhott-diagram [interactions] "Build monoidal diagram from interaction sequence" (setv boxes (lfor i interactions (cohesive-box (get i "skill_name") "State" "State" (get i "modality" "linear")))) (reduce monoidal.compose boxes))
Diagram Export Commands
# Generate Mermaid diagram from interactions just lhott-diagram mermaid # Generate base64 PNG from Mermaid just lhott-diagram png > diagram.base64 # Export to DisCoPy SVG just lhott-discopy-svg # Full pipeline: interactions → ACSet → DisCoPy → Mermaid just lhott-full-export
Key Theorems
- Cohesive Determinism:
(discretization commutes)hash ∘ ♯ = ♯ ∘ hash - Linear Conservation:
(no copy/delete)|consumed| = |interactions| - GF(3) Invariant:
per tripletΣ trit(Iᵢ) ≡ 0 (mod 3) - Spectral Verification:
(Ramanujan gap)P(verify) = 1/4
References
- Corfield, D. (2025). "Linear Homotopy Type Theory: Its Origins and Potential Uses"
- Schreiber, U. (2014). "Quantization via Linear Homotopy Types"
- Riley, M. (2022). "A Bunched Homotopy Type Theory for Synthetic Stable Homotopy Theory"
- nLab: Cohesive HoTT
Scientific Skill Interleaving
This skill connects to the K-Dense-AI/claude-scientific-skills ecosystem:
Graph Theory
- networkx [○] via bicomodule
- Universal graph hub
Bibliography References
: 112 citations in bib.duckdblinear-algebra
: 29 citations in bib.duckdbhomotopy-theory
Cat# Integration
This skill maps to Cat# = Comod(P) as a bicomodule in the equipment structure:
Trit: 0 (ERGODIC) Home: Prof Poly Op: ⊗ Kan Role: Adj Color: #26D826
GF(3) Naturality
The skill participates in triads satisfying:
(-1) + (0) + (+1) ≡ 0 (mod 3)
This ensures compositional coherence in the Cat# equipment structure.