(1.00 +0.00i) |1,2,>,V⟩ ->
(-0.71 +0.00i) |1,2,>,H⟩ + (0.71 +0.00i) |1,2,>,V⟩
We base the philosophy of this package on:
- Sparse operations (both for vectors and matrices)
- Complex numbers
- Tensor structure
- Named tensor dimensions (vide Tensors considered harmful): there is a difference between a 2x2 operator on spin and on polarization. It helps with catching errors.
Right now, you can install this package from this GitHub repository. If you use NPM:
npm install stared/quantum-tensors#master
And if you use yarn:
yarn add stared/quantum-tensors#master
And then in your project write:
import * as qt from 'quantum-tensors'
Once it gets more mature, I will push it to the NPM repository.
For "Quantum Game 2" we needed a fast and precise way to simulate quantum stuff, so after tinkering with mathjs and TensorFlow.js we decided to code what we need from scratch. At some point, we may want to use one of these libraries for backend, if we discover that it helps.
Also, https://github.com/stared/thinking-in-tensors-writing-in-pytorch by Piotr Migdał.
- Create TSDoc for each new function, class, and method
- Setup ESLint configured as in this
- Try to adhere to Angular-like commit style
- A better notation (e.g.
⨂(op1, opt2, op3))
- An equation viewer