Quantum computer music composition and performance using quantum circuits, ZX-calculus notation, and quantum instruments
/plugin marketplace add plurigrid/asi/plugin install asi-skills@asi-skillsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
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.