npx claudepluginhub plurigrid/asi --plugin asiThis skill uses the workspace's default tool permissions.
**Trit**: 0 (ERGODIC - bridging classical and quantum)
Explains Coecke's Quantum Guitar: quantizes guitar strings by associating qubits to playable states, uses ZX-calculus notation, integrates Moth Actias synth with foot controllers for classical-quantum transitions.
Builds quantum circuits with Qiskit, optimizes for hardware, executes on simulators or real quantum computers (IBM Quantum, IonQ, Amazon Braket), and analyzes results.
Builds, optimizes, and executes quantum circuits using Qiskit for algorithms like VQE/QAOA/Grover, simulations, IBM Quantum hardware, chemistry, ML, and visualization.
Share bugs, ideas, or general feedback.
Trit: 0 (ERGODIC - bridging classical and quantum) Field: Quantum Computer Music Reference: Miranda (2022) "Quantum Computer Music" Springer
Quantum Music encompasses:
| Year | Milestone |
|---|---|
| 2022 | First quantum-composed music (Ludovico Quanthoven) |
| 2022 | Miranda's "Quantum Computer Music" book |
| 2023 | Q1Synth (Miranda, Thomas, Itaboraí) |
| 2024 | Quantum Guitar debuts (Edinburgh) |
| 2024 | Black Tish at Wacken with quantum |
| 2025 | "Bell" composition (ZX notation) |
from qiskit import QuantumCircuit, execute, Aer
def quantum_melody(n_notes, n_pitches=12):
"""Generate melody via quantum measurement."""
qc = QuantumCircuit(4, 4)
qc.h(range(4)) # Superposition
qc.measure(range(4), range(4))
backend = Aer.get_backend('qasm_simulator')
result = execute(qc, backend, shots=n_notes).result()
melody = []
for bitstring, count in result.get_counts().items():
pitch = int(bitstring, 2) % n_pitches
melody.extend([pitch] * count)
return melody
def quantum_walk_melody(graph, steps):
"""Melody from quantum walk on graph."""
from discopy.quantum import qubit, H, CNOT
# Initialize walker in superposition
walker = uniform_superposition(len(graph.nodes))
for _ in range(steps):
# Coin flip
walker = apply_coin(walker)
# Shift
walker = apply_shift(walker, graph)
# Measure to get note sequence
return measure_melody(walker)
def find_chord(target_quality='major'):
"""Use Grover to find chord voicing."""
# Oracle marks good voicings
oracle = chord_quality_oracle(target_quality)
# Grover iterations
circuit = grover_circuit(oracle, n_qubits=12)
# Measure result
return measure_chord(circuit)
"Bell" by Abdyssagin & Coecke uses ZX as score:
Quantum Guitar Grand Piano
│ │
┌──┴──┐ ┌──┴──┐
│ X │ │ Z │
└──┬──┘ └──┬──┘
│ │
└──────────────────────┘
Bell pair
Measurement collapses entanglement
→ Correlated musical phrases
| Instrument | Creator | Mechanism |
|---|---|---|
| Q1Synth | Miranda et al. | Software qubit synth |
| Actias | Moth | Web-based, MIDI control |
| Quantum Guitar | Coecke | Physical + Actias |
| Quantum Piano | Abdyssagin | Mental model + notation |
from discopy import Ty, Box, Diagram
from discopy.quantum import qubit, Ket, Bra, H, CX
# Musical types
note = Ty('note')
chord = Ty('chord')
# Quantum composition as diagram
def compose_phrase():
# Prepare Bell state
bell = Ket(0, 0) >> (H @ Id(1)) >> CX
# Map to musical space
to_music = Box('sonify', qubit @ qubit, note @ note)
return bell >> to_music
quantum_music_performance:
setup:
- Actias on dedicated laptop
- MIDI routing configured
- Bloch sphere projection
soundcheck:
- Test foot controllers
- Verify measurement response
- Classical/quantum blend levels
performance:
- Smooth classical→quantum transitions
- Real-time qubit manipulation
- Measured moments for phrase endings
| Section | Trit | Character |
|---|---|---|
| Intro (classical) | -1 | Grounded |
| Development (quantum) | 0 | Superposed |
| Resolution (measured) | +1 | Collapsed |
Σ = 0: Complete musical arc conserves
Skill Name: quantum-music Type: Composition / Performance Trit: 0 (ERGODIC)
Condition: μ(n) ≠ 0 (Möbius squarefree)
This skill is qualified for non-backtracking geodesic traversal.