Finite dimensional quantum pure states, bra and kets. Mixed states are MState
in that file.
These could be done with a Hilbert space of Fintype, which would look like
(H : Type*) [NormedAddCommGroup H] [InnerProductSpace ℂ H] [CompleteSpace H] [FiniteDimensional ℂ H]
or by choosing a particular Basis
and asserting it is Fintype
. But frankly it seems easier to
mostly focus on the basis-dependent notion of Matrix
, which has the added benefit of an obvious
"classical" interpretation (as the basis elements, or diagonal elements of a mixed state). In that
sense, this quantum theory comes with the a particular classical theory always preferred.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Braket.dot ξ ψ = ∑ x : d, ξ x * ψ x
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Any Bra can be turned into a Ket by conjugating the elements.
Equations
- ↑ψ = { vec := (starRingEnd (d → ℂ)) ⇑ψ, normalized' := ⋯ }
Instances For
Any Ket can be turned into a Bra by conjugating the elements.
Equations
- ↑ψ = { vec := (starRingEnd (d → ℂ)) ⇑ψ, normalized' := ⋯ }
Instances For
Equations
- instBraOfKet = { coe := Ket.to_bra }
Equations
- instKetOfBra = { coe := Bra.to_ket }
Ket form by the superposition of all elements in d
.
Commonly denoted by |+⟩, especially for qubits
Equations
- uniform_superposition = Ket.normalize (fun (x : d) => 1) ⋯
Instances For
There exists a ket for every nonempty d
.
Here, we use the uniform superposition
Equations
- instInhabited = { default := uniform_superposition }
A Bra can be viewed as a function from Ket's to ℂ.
Equations
- instFunLikeBraket = { coe := fun (ξ : Bra d) => Braket.dot ξ, coe_injective' := ⋯ }
Equations
- «term_⊗_» = Lean.ParserDescr.trailingNode `«term_⊗_» 1022 0 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol "⊗") (Lean.ParserDescr.cat `term 0))
Instances For
The Maximally Entangled State, or MES, on a d×d system. In principle there are many, this
is specifically the MES with an all-positive phase. For instance on d := Fin 2
, this is the
Bell state
Equations
Instances For
On any space of dimension at least two, the maximally entangled state MES
is entangled.
The equivalence relation on Ket
where two kets equivalent if they are equal up to a global phase, i.e. `∃ z, ‖z‖ = 1 ∧ a.vec = z • b.vec
Equations
Instances For
The type of Ket
s up to a global phase equivalence, as given by Ket.PhaseEquiv
. In particular, MState
s really only care about a KetUpToPhase, and not Kets themselves.