Class QuantumTensorProduct

java.lang.Object
org.episteme.natural.physics.quantum.QuantumTensorProduct

public class QuantumTensorProduct extends Object
Tensor product operations for multi-qubit systems.
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

    • QuantumTensorProduct

      public QuantumTensorProduct()
  • Method Details

    • kronecker

      public static DenseMatrix<Complex> kronecker(DenseMatrix<Complex> A, DenseMatrix<Complex> B)
      Computes the tensor (Kronecker) product of two matrices. (A ⊗ B)_{(i,k),(j,l)} = A_{i,j} * B_{k,l}
      Parameters:
      A - First matrix
      B - Second matrix
      Returns:
      A ⊗ B
    • tensorGates

      public static QuantumGate tensorGates(QuantumGate gate1, QuantumGate gate2)
      Tensor product of two quantum gates.
      Parameters:
      gate1 - First gate
      gate2 - Second gate
      Returns:
      Combined gate acting on gate1.qubits + gate2.qubits qubits
    • tensorMultiple

      public static QuantumGate tensorMultiple(QuantumGate... gates)
      Tensor product of multiple gates.
      Parameters:
      gates - Gates in order (first gate is applied to highest-order qubits)
      Returns:
      Combined gate
    • nQubitHadamard

      public static QuantumGate nQubitHadamard(int numQubits)
      Creates an n-qubit Hadamard gate: H ⊗ H ⊗ ... ⊗ H
      Parameters:
      numQubits - Number of qubits
      Returns:
      n-fold tensor product of Hadamard
    • identity

      public static QuantumGate identity(int numQubits)
      Creates an identity gate for n qubits.
      Parameters:
      numQubits - Number of qubits
      Returns:
      2^n × 2^n identity matrix as gate
    • tensorStates

      public static BraKet tensorStates(BraKet psi, BraKet phi)
      Tensor product of quantum states. |ψ⟩ ⊗ |φ⟩
      Parameters:
      psi - First state
      phi - Second state
      Returns:
      Combined state