Skip to content

raffrant/tensor-network-dynamics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tensor Network Dynamics for Measurement-Driven State Engineering and Time-Crystal Response

GPU Tensor-Network Extraction Benchmark

Python Julia Status Tensor Networks

A research-oriented code repository for tensor-network studies of measurement-driven state preparation, graph-state concentration, and non-equilibrium spin-chain dynamics, with a strong emphasis on GPU-accelerated optimization, Floquet / discrete time-crystal observables, and long-time MPS evolution.

Scientific scope

This repository brings together two closely related strands of many-body quantum simulation:

  • Measurement-based tensor-network workflows in Python, focused on controlled-phase resources, local measurement maps, fidelity objectives, and constrained numerical optimization.
  • MPS-based driven and static spin-chain dynamics in Julia using ITensors.jl, including long-time magnetization tracking in Heisenberg and driven Ising settings.

The codebase is best understood as a compact research lab for prototyping ideas at the interface of tensor networks, quantum state engineering, and driven many-body dynamics.

Repository layout

tensor-network-dynamics-public/
├── docs/
│   ├── architecture.md
│   ├── contributing.md
│   ├── project-notes.md
│   └── roadmap.md
├── notebooks/
│   ├── discrete-time-crystal-ising-chain.ipynb
│   └── mps-heisenberg-chain-dynamics.ipynb
├── python/
│   ├── measurement_state_optimization.py
│   ├── GPU-graph-extraction-benchmark.py    
│   └── tensor_network_concentration.py
├── .gitignore
├── LICENSE
├── README.md
└── requirements.txt

Contents

Notebooks

notebooks/discrete-time-crystal-ising-chain.ipynb

A Julia / ITensors.jl notebook for a disordered driven Ising-chain setup with near-(\pi) spin rotations and local magnetization tracking, naturally aligned with discrete time-crystal style diagnostics.

notebooks/mps-heisenberg-chain-dynamics.ipynb

A Julia / ITensors.jl notebook for MPS evolution in a Heisenberg chain, measuring middle-spin magnetization over long times and averaging across disorder realizations.

Python scripts

python/tensor_network_concentration.py

Prototype routines for explicit tensor contractions, measurement maps, controlled-phase resource construction, entanglement diagnostics, and optimization-driven concentration / state-preparation experiments.

python/measurement_state_optimization.py

A more focused optimization script for measurement-assisted target-state preparation with constrained parameters and fidelity-based objectives.

GPU benchmark python/GPU-graph-extraction-benchmark.py

The current GPU-accelerated benchmark explores whether a four-qubit target graph state can be extracted from a six-qubit resource tensor network by applying parameterized controlled-phase graphs, local measurements, and local single-qubit corrections before benchmarking the output with fidelity.

The figure below summarizes the current GPU-driven benchmark:

  • infidelity vs phase for several target families,
  • best fidelity by family,
  • entanglement entropy versus best fidelity,
  • and the resource adjacency matrix.

Installation

Python environment

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

For the GPU benchmark, install a CUDA-enabled PyTorch build and the usual plotting stack:

pip install torch --index-url https://download.pytorch.org/whl/cu121
pip install numpy matplotlib pandas

Julia packages

using Pkg
Pkg.add(["ITensors", "Distributions", "Plots", "LaTeXStrings"])

Research directions

This repo is particularly suitable for exploring:

  • measurement-based state engineering on graph-like entangled resources,
  • optimization of local rotations and measurement angles,
  • Floquet spin dynamics and subharmonic response diagnostics,
  • long-time MPS evolution of disordered spin chains,
  • GPU-driven variational tensor-network simulation and benchmarking.

Next steps

Planned next steps are:

  • start from graphs with controlled-phase gates of random (\phi),
  • try to extract perfect graph states from those resources,
  • compare how extraction quality depends on graph structure and phase randomness,
  • and expand the GPU benchmark to larger or more frustrated graph families.

Status

This is a research prototype repository: scientifically interesting, technically substantial, and ideal for cleanup into a stronger public codebase or paper companion repo.

Figure

The benchmark image illustrates the current GPU extraction workflow and the graph-structured diagnostics used to compare target families.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors