install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/dialectica" ~/.claude/skills/majiayu000-claude-skill-registry-dialectica && rm -rf "$T"
manifest:
skills/data/dialectica/SKILL.mdsource content
Dialectica Skill (ERGODIC 0)
Proof-as-game interpretation via Gödel's Dialectica
Trit: 0 (ERGODIC)
Color: #26D826 (Green)
Role: Coordinator/Transporter
Core Concept
Dialectica transforms proofs into games:
A ⊢ B becomes ∃x. ∀y. R(x, y)
Where:
- x = Proponent's move (witness/strategy)
- y = Opponent's challenge
- R(x,y) = Winning condition (atomic)
The Dialectica Interpretation
For Logical Connectives
D(A ∧ B) = ∃(x,x').∀(y,y'). D(A)[x,y] ∧ D(B)[x',y'] D(A → B) = ∃f,F. ∀x,y. D(A)[x, F(x,y)] → D(B)[f(x), y] D(∀z.A) = ∃f. ∀z,y. D(A)[f(z), y] D(∃z.A) = ∃(z,x). ∀y. D(A)[x, y]
Key Insight: Functions as Strategies
- f extracts witnesses from proofs
- F back-propagates challenges
- Composition = strategy composition
Integration with Glass Bead Game
# World hop via Dialectica def dialectica_hop(proposition, world_state) # Transform proposition to game game = { proponent_moves: extract_witnesses(proposition), opponent_moves: extract_challenges(proposition), winning: atomic_condition(proposition) } # Play generates new world new_world = play_game(game, world_state) # GF(3) conservation check verify_gf3(world_state, new_world) end
Attack/Defense Structure
Proponent (∃) ↓ witness x Opponent (∀) ↓ challenge y Proponent ↓ response (via f, F) ... Atomic check R(x,y)
Linear Logic Decomposition
Dialectica splits into multiplicative/additive:
A ⊸ B = (A⊥ ⅋ B) # Linear implication A ⊗ B # Tensor (both needed) A & B # With (choice) A ⊕ B # Plus (given) !A # Of course (reusable) ?A # Why not (garbage)
Chu Construction
Chu(Set, ⊥) ≃ *-autonomous category Objects: (A⁺, A⁻, ⟨-,-⟩: A⁺ × A⁻ → ⊥)
GF(3) Triads
three-match (-1) ⊗ dialectica (0) ⊗ gay-mcp (+1) = 0 ✓ proofgeneral-narya (-1) ⊗ dialectica (0) ⊗ rubato-composer (+1) = 0 ✓ clj-kondo-3color (-1) ⊗ dialectica (0) ⊗ cider-clojure (+1) = 0 ✓
Commands
# Transform proof to game just dialectica-game "A → B" # Play one round just dialectica-play witness challenge # Check linear decomposition just dialectica-linear prop
de Paiva Categories
Dialectica produces:
- Dial(Set): Dialectica category over Set
- Morphisms: (f, F) pairs with coherence
- Tensor: Product of games
- Internal hom: Strategy space
Hom_Dial((A,X,α), (B,Y,β)) = { (f,F) : A×Y → B, A×Y → X | α(a, F(a,y)) ≤ β(f(a,y), y) }
References
- Gödel, "Über eine bisher noch nicht benützte Erweiterung" (1958)
- de Paiva, "The Dialectica Categories"
- Shulman, "Linear Logic for Constructive Mathematics"
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
: 734 citations in bib.duckdbgeneral
SDF Interleaving
This skill connects to Software Design for Flexibility (Hanson & Sussman, 2021):
Primary Chapter: 8. Degeneracy
Concepts: redundancy, fallback, multiple strategies, robustness
GF(3) Balanced Triad
dialectica (○) + SDF.Ch8 (−) + [balancer] (+) = 0
Skill Trit: 0 (ERGODIC - coordination)
Secondary Chapters
- Ch1: Flexibility through Abstraction
- Ch4: Pattern Matching
- Ch5: Evaluation
- Ch10: Adventure Game Example
- Ch7: Propagators
Connection Pattern
Degeneracy provides fallbacks. This skill offers redundant strategies.
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.