Best use case
dialectica is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Dialectica Skill (ERGODIC 0)
Teams using dialectica should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
$curl -o ~/.claude/skills/dialectica/SKILL.md --create-dirs "https://raw.githubusercontent.com/plurigrid/asi/main/ies/music-topos/.codex/skills/dialectica/SKILL.md"
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/dialectica/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How dialectica Compares
| Feature / Agent | dialectica | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Dialectica Skill (ERGODIC 0)
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 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
```ruby
# 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
```bash
# 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:
1. **Dial(Set)**: Dialectica category over Set
2. **Morphisms**: (f, F) pairs with coherence
3. **Tensor**: Product of games
4. **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"Related Skills
We are still matching the closest adjacent skills for this page. In the meantime, continue through the full directory.