├── .flake8 ├── .github └── workflows │ └── qrisp_test.yml ├── .gitignore ├── .gitlab-ci.yml ├── LICENSE ├── README.md ├── documentation ├── .gitignore ├── Makefile ├── README.md ├── extensions.bat ├── make.bat ├── requirements_doc.txt └── source │ ├── Qrisp_PPT_Grafiken_v2.pptx │ ├── _extra │ └── google1368592414d639ea.html │ ├── _static │ ├── 1200px-Fraunhofer-Gesellschaft_2009_logo.png │ ├── BeH2_PEC_4_2.png │ ├── BeH2_PEC_6_2.png │ ├── DiagonalHamiltonianApplication.png │ ├── H2_PEC.png │ ├── HHL.png │ ├── IBM-Q.jpg │ ├── Ising_chain_N=6.png │ ├── LCU.png │ ├── PhasePolynomialApplication.png │ ├── abakus.png │ ├── backtracking.svg │ ├── backtracking_plot.py │ ├── bmwk_logo.png │ ├── css │ │ └── custom08.css │ ├── dlr_logo.svg │ ├── eclipse_logo.png │ ├── ecplipse_font.png │ ├── eleqtron_logo.png │ ├── eu.png │ ├── fraunhofer_fokus_logo.png │ ├── hamiltonian_.svg │ ├── hamiltonian_plot.py │ ├── heisenberg_energy.png │ ├── heisenberg_lattice.png │ ├── heisenberg_qite.png │ ├── hello_world.png │ ├── hybrid_realtime.png │ ├── hydrogen.png │ ├── incubating.png │ ├── iqm_logo.jpg │ ├── maxClique.png │ ├── maxIndepSet.png │ ├── maxcut_jasp.png │ ├── maxcut_qite.png │ ├── maxcut_tutorial.png │ ├── period_finding.svg │ ├── plug.png │ ├── puzzle.png │ ├── qmci.svg │ ├── qmci_plot.py │ ├── qrisp_logo.png │ ├── quantum.png │ ├── quantumcomputer.png │ ├── recycling.png │ ├── torus.png │ ├── torus.svg │ ├── torus_plot.py │ ├── tsp.svg │ ├── tsp_plot.py │ ├── tutorial_statevector.png │ ├── typed_variables_pic.png │ └── vqeH2.png │ ├── _templates │ ├── dynamic_sidebar.html │ ├── layout.html │ ├── slack_link.html │ └── thebe_button.html │ ├── conf.py │ ├── general │ ├── changelog │ │ ├── 0.1.rst │ │ ├── 0.2.rst │ │ ├── 0.3.rst │ │ ├── 0.4.rst │ │ ├── 0.5.rst │ │ ├── 0.6.rst │ │ ├── 0.7.rst │ │ ├── 04_compiler_plot.py │ │ ├── 04_compiler_plot.svg │ │ ├── 04_shor_plot.svg │ │ ├── backtracking_comparison.svg │ │ ├── index.rst │ │ ├── openfermion_comparison.png │ │ ├── optimization_loop.png │ │ └── structure_overview.png │ ├── imprint.rst │ ├── papers │ │ └── index.rst │ ├── setup.rst │ ├── thinq_qrisp │ │ ├── Quantum-Computer_Berlin_Ai-generated_korr.jpg │ │ ├── hackathon.png │ │ ├── index.rst │ │ ├── networking.png │ │ ├── quantum_girl.jpg │ │ ├── talk.png │ │ └── tutorial.png │ └── tutorial │ │ ├── FT_compilation.ipynb │ │ ├── H2.ipynb │ │ ├── HHL.ipynb │ │ ├── Jasp.ipynb │ │ ├── JaspQAOAtutorial.ipynb │ │ ├── QAOAtutorial │ │ ├── ConstrainedMixers.ipynb │ │ ├── MaxCut.ipynb │ │ ├── MkCS.ipynb │ │ ├── PortfolioRebalancing.ipynb │ │ ├── QUBO.ipynb │ │ ├── Theoretical.rst │ │ ├── all_to_all.PNG │ │ ├── channelled.PNG │ │ ├── index.rst │ │ └── multi_slit_graphic.pptx │ │ ├── QIROtutorial.ipynb │ │ ├── QMCItutorial.ipynb │ │ ├── Shor.ipynb │ │ ├── Sudoku.ipynb │ │ ├── TSP.ipynb │ │ ├── hydrogen_with_axes.png │ │ ├── index.rst │ │ ├── sudoku.png │ │ ├── tutorial.ipynb │ │ └── tutorial_statevector.png │ ├── index.rst │ ├── qiskit_logo.png │ ├── qrisp_logo.png │ ├── qrisp_wheel.png │ ├── qrisp_wheel_.png │ └── reference │ ├── Algorithms │ ├── Grover.rst │ ├── QITE.rst │ ├── QMCI.rst │ ├── QuantumBacktrackingTree.rst │ ├── Shor.rst │ ├── generated │ │ ├── phi_state_plot.png │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.copy.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.estimate_phase.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.find_solution.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.init_node.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.init_phi.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.path_decoder.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.qstep_diffuser.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.quantum_step.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.statevector.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.statevector_graph.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.subtree.rst │ │ ├── qrisp.quantum_backtracking.QuantumBacktrackingTree.visualize_statevector.rst │ │ ├── qrisp.shor.rsa_decrypt.rst │ │ ├── qrisp.shor.rsa_decrypt_string.rst │ │ ├── qrisp.shor.rsa_encrypt.rst │ │ ├── qrisp.shor.rsa_encrypt_string.rst │ │ └── root_state_plot.png │ ├── index.rst │ ├── qaoa │ │ ├── JaspQAOA.rst │ │ ├── QAOA.rst │ │ ├── QAOABenchmark.rst │ │ ├── QAOAImplementations.rst │ │ ├── QAOAMixers.rst │ │ ├── QAOAProblem.rst │ │ ├── generated │ │ │ ├── benchmark_plot.png │ │ │ ├── qrisp.qaoa.QAOABenchmark.evaluate.rst │ │ │ ├── qrisp.qaoa.QAOABenchmark.load.rst │ │ │ ├── qrisp.qaoa.QAOABenchmark.rank.rst │ │ │ ├── qrisp.qaoa.QAOABenchmark.save.rst │ │ │ ├── qrisp.qaoa.QAOABenchmark.visualize.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.benchmark.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.compile_circuit.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.run.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.set_init_function.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.train_function.rst │ │ │ ├── qrisp.qaoa.QAOAProblem.visualize_cost.rst │ │ │ ├── qrisp.qaoa.RX_mixer.rst │ │ │ ├── qrisp.qaoa.RY_mixer.rst │ │ │ ├── qrisp.qaoa.RZ_mixer.rst │ │ │ ├── qrisp.qaoa.XY_mixer.rst │ │ │ ├── qrisp.qaoa.constrained_mixer_gen.rst │ │ │ ├── qrisp.qaoa.controlled_RX_mixer_gen.rst │ │ │ └── qrisp.qaoa.grover_mixer.rst │ │ └── implementations │ │ │ ├── QUBO.rst │ │ │ ├── eThrLinTwo.rst │ │ │ ├── mKCS.png │ │ │ ├── maxClique.png │ │ │ ├── maxClique.rst │ │ │ ├── maxCut.png │ │ │ ├── maxCut.rst │ │ │ ├── maxIndepSet.png │ │ │ ├── maxIndepSet.rst │ │ │ ├── maxKColorableSubgraph.rst │ │ │ ├── maxSat.rst │ │ │ ├── maxSetPack.rst │ │ │ └── minSetCover.rst │ ├── qiro │ │ ├── QIRO.rst │ │ ├── QIROImplementations.rst │ │ ├── QIROProblem.rst │ │ ├── generated │ │ │ └── qrisp.qiro.QIROProblem.run_qiro.rst │ │ └── implementations │ │ │ ├── QIROMaxClique.rst │ │ │ ├── QIROMaxIndep.rst │ │ │ ├── QIROMaxSat.rst │ │ │ └── QIROMaxSetPack.rst │ ├── quantum_counting.rst │ ├── root_state_plot.png │ └── vqe │ │ ├── JaspVQE.rst │ │ ├── VQE.rst │ │ ├── VQEBenchmark.rst │ │ ├── VQEImplementations.rst │ │ ├── VQEProblem.rst │ │ ├── generated │ │ ├── qrisp.vqe.VQEBenchmark.evaluate.rst │ │ ├── qrisp.vqe.VQEBenchmark.load.rst │ │ ├── qrisp.vqe.VQEBenchmark.rank.rst │ │ ├── qrisp.vqe.VQEBenchmark.save.rst │ │ ├── qrisp.vqe.VQEBenchmark.visualize.rst │ │ ├── qrisp.vqe.VQEProblem.benchmark.rst │ │ ├── qrisp.vqe.VQEProblem.compile_circuit.rst │ │ ├── qrisp.vqe.VQEProblem.run.rst │ │ ├── qrisp.vqe.VQEProblem.set_init_function.rst │ │ ├── qrisp.vqe.VQEProblem.train_function.rst │ │ ├── qrisp.vqe.VQEProblem.visualize_energy.rst │ │ └── vqe_benchmark_plot.png │ │ └── vqeProblems │ │ ├── electronic_structure.rst │ │ └── heisenberg.rst │ ├── Backend Interface │ ├── AQTBackend.rst │ ├── BackendClient.rst │ ├── BackendServer.rst │ ├── BatchedBackend.rst │ ├── DockerSimulators.rst │ ├── IQMBackend.rst │ ├── QiskitBackend.rst │ ├── QiskitRuntimeBackend.rst │ ├── VirtualBackend.rst │ ├── generated │ │ ├── qrisp.interface.QiskitRuntimeBackend.close_session.rst │ │ ├── qrisp.interface.VirtualBackend.__init__.rst │ │ ├── qrisp.interface.qunicorn.BackendClient.__init__.rst │ │ ├── qrisp.interface.qunicorn.BackendClient.run.rst │ │ └── qrisp.interface.qunicorn.BackendServer.start.rst │ └── index.rst │ ├── Circuit Manipulation │ ├── Clbit.rst │ ├── Instruction.rst │ ├── Operation.rst │ ├── QuantumCircuit.rst │ ├── Qubit.rst │ ├── generated │ │ ├── qrisp.Instruction.copy.rst │ │ ├── qrisp.Instruction.merge.rst │ │ ├── qrisp.Operation.bind_parameters.rst │ │ ├── qrisp.Operation.control.rst │ │ ├── qrisp.Operation.copy.rst │ │ ├── qrisp.Operation.get_unitary.rst │ │ ├── qrisp.Operation.inverse.rst │ │ ├── qrisp.QuantumCircuit.add_clbit.rst │ │ ├── qrisp.QuantumCircuit.add_qubit.rst │ │ ├── qrisp.QuantumCircuit.append.rst │ │ ├── qrisp.QuantumCircuit.bind_parameters.rst │ │ ├── qrisp.QuantumCircuit.ccx.rst │ │ ├── qrisp.QuantumCircuit.clearcopy.rst │ │ ├── qrisp.QuantumCircuit.cnot_depth.rst │ │ ├── qrisp.QuantumCircuit.compare_unitary.rst │ │ ├── qrisp.QuantumCircuit.copy.rst │ │ ├── qrisp.QuantumCircuit.count_ops.rst │ │ ├── qrisp.QuantumCircuit.cp.rst │ │ ├── qrisp.QuantumCircuit.cx.rst │ │ ├── qrisp.QuantumCircuit.cy.rst │ │ ├── qrisp.QuantumCircuit.cz.rst │ │ ├── qrisp.QuantumCircuit.depth.rst │ │ ├── qrisp.QuantumCircuit.extend.rst │ │ ├── qrisp.QuantumCircuit.from_qasm_file.rst │ │ ├── qrisp.QuantumCircuit.from_qasm_str.rst │ │ ├── qrisp.QuantumCircuit.from_qiskit.rst │ │ ├── qrisp.QuantumCircuit.get_unitary.rst │ │ ├── qrisp.QuantumCircuit.gphase.rst │ │ ├── qrisp.QuantumCircuit.h.rst │ │ ├── qrisp.QuantumCircuit.id.rst │ │ ├── qrisp.QuantumCircuit.inverse.rst │ │ ├── qrisp.QuantumCircuit.mcx.rst │ │ ├── qrisp.QuantumCircuit.measure.rst │ │ ├── qrisp.QuantumCircuit.num_qubits.rst │ │ ├── qrisp.QuantumCircuit.p.rst │ │ ├── qrisp.QuantumCircuit.qasm.rst │ │ ├── qrisp.QuantumCircuit.reset.rst │ │ ├── qrisp.QuantumCircuit.run.rst │ │ ├── qrisp.QuantumCircuit.rx.rst │ │ ├── qrisp.QuantumCircuit.rxx.rst │ │ ├── qrisp.QuantumCircuit.ry.rst │ │ ├── qrisp.QuantumCircuit.rz.rst │ │ ├── qrisp.QuantumCircuit.rzz.rst │ │ ├── qrisp.QuantumCircuit.s.rst │ │ ├── qrisp.QuantumCircuit.s_dg.rst │ │ ├── qrisp.QuantumCircuit.statevector_array.rst │ │ ├── qrisp.QuantumCircuit.swap.rst │ │ ├── qrisp.QuantumCircuit.sx.rst │ │ ├── qrisp.QuantumCircuit.sx_dg.rst │ │ ├── qrisp.QuantumCircuit.t.rst │ │ ├── qrisp.QuantumCircuit.t_depth.rst │ │ ├── qrisp.QuantumCircuit.t_dg.rst │ │ ├── qrisp.QuantumCircuit.to_gate.rst │ │ ├── qrisp.QuantumCircuit.to_latex.rst │ │ ├── qrisp.QuantumCircuit.to_op.rst │ │ ├── qrisp.QuantumCircuit.to_pennylane.rst │ │ ├── qrisp.QuantumCircuit.to_pytket.rst │ │ ├── qrisp.QuantumCircuit.to_qiskit.rst │ │ ├── qrisp.QuantumCircuit.transpile.rst │ │ ├── qrisp.QuantumCircuit.u3.rst │ │ ├── qrisp.QuantumCircuit.unitary.rst │ │ ├── qrisp.QuantumCircuit.x.rst │ │ ├── qrisp.QuantumCircuit.xxyy.rst │ │ ├── qrisp.QuantumCircuit.y.rst │ │ └── qrisp.QuantumCircuit.z.rst │ └── index.rst │ ├── Core │ ├── Function Injection.rst │ ├── QuantumArray.rst │ ├── QuantumDictionary.rst │ ├── QuantumSession.rst │ ├── QuantumVariable.rst │ ├── Session Merging.rst │ ├── Uncomputation.rst │ ├── generated │ │ ├── qrisp.QuantumArray.concatenate.rst │ │ ├── qrisp.QuantumArray.delete.rst │ │ ├── qrisp.QuantumArray.duplicate.rst │ │ ├── qrisp.QuantumArray.encode.rst │ │ ├── qrisp.QuantumArray.flatten.rst │ │ ├── qrisp.QuantumArray.get_measurement.rst │ │ ├── qrisp.QuantumArray.most_likely.rst │ │ ├── qrisp.QuantumArray.ravel.rst │ │ ├── qrisp.QuantumArray.reshape.rst │ │ ├── qrisp.QuantumArray.swapaxes.rst │ │ ├── qrisp.QuantumArray.transpose.rst │ │ ├── qrisp.QuantumDictionary.load.rst │ │ ├── qrisp.QuantumSession.__init__.rst │ │ ├── qrisp.QuantumSession.cnot_count.rst │ │ ├── qrisp.QuantumSession.compile.rst │ │ ├── qrisp.QuantumSession.depth.rst │ │ ├── qrisp.QuantumSession.statevector.rst │ │ ├── qrisp.QuantumVariable.__init__.rst │ │ ├── qrisp.QuantumVariable.app_phase_function.rst │ │ ├── qrisp.QuantumVariable.custom.rst │ │ ├── qrisp.QuantumVariable.decoder.rst │ │ ├── qrisp.QuantumVariable.delete.rst │ │ ├── qrisp.QuantumVariable.duplicate.rst │ │ ├── qrisp.QuantumVariable.encode.rst │ │ ├── qrisp.QuantumVariable.encoder.rst │ │ ├── qrisp.QuantumVariable.extend.rst │ │ ├── qrisp.QuantumVariable.get_measurement.rst │ │ ├── qrisp.QuantumVariable.init_from.rst │ │ ├── qrisp.QuantumVariable.init_state.rst │ │ ├── qrisp.QuantumVariable.most_likely.rst │ │ ├── qrisp.QuantumVariable.reduce.rst │ │ ├── qrisp.QuantumVariable.uncompute.rst │ │ ├── statevector_print.png │ │ └── symbolic_statevector_print.png │ └── index.rst │ ├── Examples │ ├── AbstractParameter.rst │ ├── DiagonalHamiltonianApplication.rst │ ├── EfficientTSP.rst │ ├── ExactGrover.rst │ ├── GroundStateEnergyQPE.rst │ ├── HelloWorld.rst │ ├── InplaceMatrixMultiplication.rst │ ├── IsingModel.rst │ ├── Loops.rst │ ├── MatrixMultiplication.rst │ ├── MaxCutQITE.rst │ ├── MolecularPotentialEnergyCurve.rst │ ├── QuantumModDivision.rst │ ├── Shor.rst │ ├── SimulationExample.rst │ └── index.rst │ ├── Introduction.rst │ ├── Jasp │ ├── Control Flow │ │ ├── ClControl.rst │ │ ├── Prefix Control.rst │ │ ├── RUS.rst │ │ ├── index.rst │ │ └── jrange.rst │ ├── Expectation Value.rst │ ├── Jaspr.rst │ ├── Optimization Tools │ │ ├── COBYLA.rst │ │ ├── Optimization Tools.rst │ │ └── SPSA.rst │ ├── Ported Features.rst │ ├── Quantum Kernel.rst │ ├── Resource Estimation.rst │ ├── Sampling.rst │ ├── Simulation Tools │ │ ├── Boolean Simulation.rst │ │ ├── Jaspify.rst │ │ ├── QJIT.rst │ │ ├── Stimulation.rst │ │ ├── Terminal Sampling.rst │ │ └── index.rst │ ├── generated │ │ ├── qrisp.jasp.Jaspr.control.rst │ │ ├── qrisp.jasp.Jaspr.inverse.rst │ │ ├── qrisp.jasp.Jaspr.qjit.rst │ │ ├── qrisp.jasp.Jaspr.to_catalyst_jaxpr.rst │ │ ├── qrisp.jasp.Jaspr.to_mlir.rst │ │ ├── qrisp.jasp.Jaspr.to_qasm.rst │ │ ├── qrisp.jasp.Jaspr.to_qc.rst │ │ └── qrisp.jasp.Jaspr.to_qir.rst │ ├── index.rst │ └── qache.rst │ ├── Operators │ ├── FermionicOperator.rst │ ├── QubitOperator.rst │ ├── generated │ │ ├── qrisp.operators.fermionic.FermionicOperator.dagger.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.expectation_value.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.from_openfermion.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.from_pyscf.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.get_measurement.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.ground_state_energy.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.hermitize.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.reduce.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.to_qubit_operator.rst │ │ ├── qrisp.operators.fermionic.FermionicOperator.trotterization.rst │ │ ├── qrisp.operators.qubit.QubitOperator.adjoint.rst │ │ ├── qrisp.operators.qubit.QubitOperator.commutator.rst │ │ ├── qrisp.operators.qubit.QubitOperator.expectation_value.rst │ │ ├── qrisp.operators.qubit.QubitOperator.from_matrix.rst │ │ ├── qrisp.operators.qubit.QubitOperator.get_measurement.rst │ │ ├── qrisp.operators.qubit.QubitOperator.ground_state_energy.rst │ │ ├── qrisp.operators.qubit.QubitOperator.hermitize.rst │ │ ├── qrisp.operators.qubit.QubitOperator.to_array.rst │ │ ├── qrisp.operators.qubit.QubitOperator.to_pauli.rst │ │ ├── qrisp.operators.qubit.QubitOperator.to_sparse_matrix.rst │ │ ├── qrisp.operators.qubit.QubitOperator.trotterization.rst │ │ └── qrisp.operators.qubit.QubitOperator.unitaries.rst │ └── index.rst │ ├── Primitives │ ├── DickeStates.rst │ ├── Gate functions.rst │ ├── Grover tools.rst │ ├── IQAE.rst │ ├── IQPE.rst │ ├── LCU.rst │ ├── Phase polynomial tools.rst │ ├── Prefix arithmetic.rst │ ├── QAE.rst │ ├── QFT.rst │ ├── QPE.rst │ ├── amplitude_amplification.rst │ ├── cyclic_shift.rst │ ├── demux.rst │ ├── generated │ │ ├── qrisp.LCU.rst │ │ ├── qrisp.app_phase_polynomial.rst │ │ ├── qrisp.app_sb_phase_polynomial.rst │ │ ├── qrisp.barrier.rst │ │ ├── qrisp.cp.rst │ │ ├── qrisp.crz.rst │ │ ├── qrisp.cuccaro_adder.rst │ │ ├── qrisp.cx.rst │ │ ├── qrisp.cy.rst │ │ ├── qrisp.cz.rst │ │ ├── qrisp.dot.rst │ │ ├── qrisp.fourier_adder.rst │ │ ├── qrisp.gidney_adder.rst │ │ ├── qrisp.gphase.rst │ │ ├── qrisp.grover.diffuser.rst │ │ ├── qrisp.grover.tag_state.rst │ │ ├── qrisp.h.rst │ │ ├── qrisp.hybrid_mult.rst │ │ ├── qrisp.id.rst │ │ ├── qrisp.inner_LCU.rst │ │ ├── qrisp.inpl_add.rst │ │ ├── qrisp.inpl_mult.rst │ │ ├── qrisp.inplace_matrix_app.rst │ │ ├── qrisp.mcp.rst │ │ ├── qrisp.mcx.rst │ │ ├── qrisp.mcz.rst │ │ ├── qrisp.measure.rst │ │ ├── qrisp.p.rst │ │ ├── qrisp.q_div.rst │ │ ├── qrisp.q_divmod.rst │ │ ├── qrisp.q_isqrt.rst │ │ ├── qrisp.q_matmul.rst │ │ ├── qrisp.qcla.rst │ │ ├── qrisp.qf_inversion.rst │ │ ├── qrisp.remaud_adder.rst │ │ ├── qrisp.rx.rst │ │ ├── qrisp.rxx.rst │ │ ├── qrisp.ry.rst │ │ ├── qrisp.rz.rst │ │ ├── qrisp.rzz.rst │ │ ├── qrisp.s.rst │ │ ├── qrisp.s_dg.rst │ │ ├── qrisp.sbp_add.rst │ │ ├── qrisp.sbp_mult.rst │ │ ├── qrisp.sbp_sub.rst │ │ ├── qrisp.semi_classic_matmul.rst │ │ ├── qrisp.swap.rst │ │ ├── qrisp.sx.rst │ │ ├── qrisp.sx_dg.rst │ │ ├── qrisp.t.rst │ │ ├── qrisp.t_dg.rst │ │ ├── qrisp.tensordot.rst │ │ ├── qrisp.u3.rst │ │ ├── qrisp.view_LCU.rst │ │ ├── qrisp.x.rst │ │ ├── qrisp.xxyy.rst │ │ ├── qrisp.y.rst │ │ └── qrisp.z.rst │ ├── index.rst │ ├── iterable_permutation.rst │ ├── prepare.rst │ ├── qswitch.rst │ └── reflection.rst │ ├── Quantum Environments │ ├── ConditionEnvironment.rst │ ├── ConjugationEnvironment.rst │ ├── ControlEnvironment.rst │ ├── GMSEnvironment.rst │ ├── GateWrapEnvironment.rst │ ├── InversionEnvironment.rst │ ├── IterationEnvironment.rst │ └── index.rst │ ├── Quantum Types │ ├── QuantumBool.rst │ ├── QuantumChar.rst │ ├── QuantumFloat.rst │ ├── QuantumModulus.rst │ ├── QuantumString.rst │ ├── generated │ │ ├── qrisp.QuantumBool.flip.rst │ │ ├── qrisp.QuantumFloat.add_sign.rst │ │ ├── qrisp.QuantumFloat.exp_shift.rst │ │ ├── qrisp.QuantumFloat.get_ev.rst │ │ ├── qrisp.QuantumFloat.quantum_bit_shift.rst │ │ ├── qrisp.QuantumFloat.sb_poly.rst │ │ ├── qrisp.QuantumFloat.sign.rst │ │ ├── qrisp.QuantumFloat.significant.rst │ │ └── qrisp.QuantumFloat.truncate.rst │ └── index.rst │ ├── Utilities.rst │ ├── generated │ ├── qrisp.as_hamiltonian.rst │ ├── qrisp.batched_measurement.rst │ ├── qrisp.cnot_depth_indicator.rst │ ├── qrisp.custom_control.rst │ ├── qrisp.gate_wrap.rst │ ├── qrisp.inpl_adder_test.rst │ ├── qrisp.lifted.rst │ ├── qrisp.lock.rst │ ├── qrisp.multi_measurement.rst │ ├── qrisp.perm_lock.rst │ ├── qrisp.perm_unlock.rst │ ├── qrisp.redirect_qfunction.rst │ ├── qrisp.t_depth_indicator.rst │ └── qrisp.unlock.rst │ ├── index.rst │ ├── structure_overview.png │ └── structure_overview.pptx ├── logo ├── gimp_file.xcf ├── gimp_file_contur.xcf ├── logo_extended.png ├── logo_with_contour.png ├── qrisp_favicon.png ├── qrisp_favicon.xcf ├── qrisp_logo.pdf ├── qrisp_logo.png └── qrisp_logo_small.png ├── pyproject.toml ├── setup.cfg ├── setup.py ├── src └── qrisp │ ├── .gitignore │ ├── __init__.py │ ├── alg_primitives │ ├── __init__.py │ ├── amplitude_amplification.py │ ├── arithmetic │ │ ├── SBP_arithmetic.py │ │ ├── __init__.py │ │ ├── adders │ │ │ ├── __init__.py │ │ │ ├── adder_tools.py │ │ │ ├── cuccaro.py │ │ │ ├── fourier_adder.py │ │ │ ├── gidney │ │ │ │ ├── __init__.py │ │ │ │ ├── cq_gidney_adder.py │ │ │ │ ├── gidney_adder.py │ │ │ │ └── qq_gidney_adder.py │ │ │ ├── incrementation.py │ │ │ ├── qcla │ │ │ │ ├── __init__.py │ │ │ │ ├── classical_quantum │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── cq_carry_path.py │ │ │ │ │ ├── cq_qcla_adder.py │ │ │ │ │ └── cq_sum_path.py │ │ │ │ ├── quantum_quantum │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── qq_carry_path.py │ │ │ │ │ ├── qq_qcla_adder.py │ │ │ │ │ └── qq_sum_path.py │ │ │ │ └── wrapper_function.py │ │ │ ├── remaud.py │ │ │ └── ripple_carry_adder.py │ │ ├── comparisons.py │ │ ├── isqrt │ │ │ ├── __init__.py │ │ │ └── isqrt_algorithm.py │ │ ├── jasp_arithmetic │ │ │ ├── __init__.py │ │ │ ├── jasp_cq_gidney_adder.py │ │ │ ├── jasp_fourier_adder.py │ │ │ ├── jasp_mod_adder.py │ │ │ ├── jasp_multiplyers.py │ │ │ └── jasp_qq_gidney_adder.py │ │ ├── matrix_multiplication.py │ │ ├── modular_arithmetic │ │ │ ├── __init__.py │ │ │ ├── mod_tools.py │ │ │ ├── modular_multiplication.py │ │ │ ├── modular_qft_addition.py │ │ │ └── modular_qft_multiplication.py │ │ ├── poly_tools.py │ │ ├── qcla_adder.py │ │ ├── ripple_division.py │ │ ├── ripple_mult.py │ │ └── uint_clifford_t_comparisons.py │ ├── dicke_state_prep.py │ ├── iterable_processing.py │ ├── iterative_qae.py │ ├── iterative_qpe.py │ ├── lcu.py │ ├── logic_synthesis │ │ ├── __init__.py │ │ ├── gray_synthesis.py │ │ ├── pprm_synthesis.py │ │ └── truth_tables.py │ ├── mcx_algs │ │ ├── __init__.py │ │ ├── amy.py │ │ ├── balauca.py │ │ ├── circuit_library.py │ │ ├── gidney.py │ │ ├── gms.py │ │ ├── gray.py │ │ ├── gray_pt.py │ │ ├── jones.py │ │ ├── khattar.py │ │ ├── maslov.py │ │ ├── multi_cx.py │ │ └── yong.py │ ├── prepare.py │ ├── qae.py │ ├── qft.py │ ├── qpe.py │ ├── reflection.py │ └── switch_case.py │ ├── algorithms │ ├── __init__.py │ ├── grover │ │ ├── __init__.py │ │ └── grover_tools.py │ ├── hhl.py │ ├── qaoa │ │ ├── __init__.py │ │ ├── mixers.py │ │ ├── problems │ │ │ ├── QUBO.py │ │ │ ├── __init__.py │ │ │ ├── eThrLinTwo.py │ │ │ ├── maxClique.py │ │ │ ├── maxCut.py │ │ │ ├── maxIndepSet.py │ │ │ ├── maxKColorableSubgraph.py │ │ │ ├── maxSat.py │ │ │ ├── maxSetPacking.py │ │ │ ├── minSetCover.py │ │ │ └── portfolio_rebalancing.py │ │ ├── qaoa_benchmark_data.py │ │ └── qaoa_problem.py │ ├── qiro │ │ ├── __init__.py │ │ ├── qiro_mixers.py │ │ ├── qiro_problem.py │ │ └── qiroproblems │ │ │ ├── __init__.py │ │ │ ├── qiroMaxClique.py │ │ │ ├── qiroMaxIndepSet.py │ │ │ ├── qiroMaxSat.py │ │ │ ├── qiroMaxSetPack.py │ │ │ └── qiro_utils.py │ ├── qite.py │ ├── qmci.py │ ├── quantum_backtracking │ │ ├── __init__.py │ │ └── backtracking_tree.py │ ├── quantum_counting.py │ ├── shor │ │ ├── __init__.py │ │ ├── crypto_tools.py │ │ └── shors_algorithm.py │ └── vqe │ │ ├── __init__.py │ │ ├── problems │ │ ├── __init__.py │ │ ├── electronic_structure.py │ │ └── heisenberg.py │ │ ├── vqe_benchmark_data.py │ │ └── vqe_problem.py │ ├── circuit │ ├── __init__.py │ ├── clbit.py │ ├── compilation_acceleration.py │ ├── controlled_operations.py │ ├── instruction.py │ ├── library.py │ ├── operation.py │ ├── quantum_circuit.py │ ├── qubit.py │ ├── standard_operations.py │ └── transpiler.py │ ├── core │ ├── __init__.py │ ├── compilation.py │ ├── gate_application_functions.py │ ├── quantum_array.py │ ├── quantum_dictionary.py │ ├── quantum_session.py │ ├── quantum_variable.py │ └── session_merging_tools.py │ ├── default_backend.py │ ├── environments │ ├── GMS_environment.py │ ├── __init__.py │ ├── classical_control_environment.py │ ├── conjugation_environment.py │ ├── control_environment.py │ ├── custom_control_environment.py │ ├── custom_inversion_environment.py │ ├── gate_wrap_environment.py │ ├── iteration_environment.py │ ├── jiteration_environment.py │ ├── quantum_conditionals.py │ ├── quantum_environments.py │ └── quantum_inversion.py │ ├── examples │ ├── GMS_converter_example.py │ ├── GMS_environment_example.py │ ├── GMS_gates_example.py │ ├── MaxCut_qaoa.py │ ├── MkCS_qaoa.py │ ├── QIROMaxCliqueExample.py │ ├── QIROMaxIndepControlledMixerExample.py │ ├── QIROMaxIndepExample.py │ ├── QIROMaxSatExample.py │ ├── QIROMaxSetPackTrafoToMIS.py │ ├── QUBO_qaoa.py │ ├── abstract_parameters.py │ ├── backtracking.py │ ├── classiq_qsvt_paper_comparison.py │ ├── conditional_environments_example.py │ ├── diagonal_hamiltonian_application.py │ ├── gray_synthesis_example.py │ ├── grovers_algorithm.py │ ├── hello_world.py │ ├── hhl_example.py │ ├── inpl_matrix_multiplication_example.py │ ├── jasp_demo.ipynb │ ├── jasp_gidney_adder.py │ ├── jax_tracing.py │ ├── loops.py │ ├── matrix_multiplication_example.py │ ├── open_fermion_comparison.py │ ├── portfolio_rebalancingExample.py │ ├── qiskit_backend_client.py │ ├── quantum_arithmetic_example.py │ ├── quantum_counting.py │ ├── quantum_dictionary.py │ ├── quantum_division.py │ ├── quantum_string_example.py │ ├── quantum_teleportation.py │ ├── resource_estimation_comparison.py │ ├── sat_solver.py │ ├── state_preparation.py │ ├── tsp.py │ └── unitary_calculation.py │ ├── interface │ ├── __init__.py │ ├── batched_backend.py │ ├── converter │ │ ├── __init__.py │ │ ├── pennylane_converter.py │ │ ├── pytket_converter.py │ │ ├── qiskit_converter.py │ │ └── qulacs_converter.py │ ├── docker_backends.py │ ├── provider_backends │ │ ├── __init__.py │ │ ├── aqt_backend.py │ │ ├── iqm_backend.py │ │ └── qiskit_backend.py │ ├── qunicorn │ │ ├── __init__.py │ │ ├── backend_client.py │ │ └── backend_server.py │ └── virtual_backend.py │ ├── jasp │ ├── __init__.py │ ├── evaluation_tools │ │ ├── __init__.py │ │ ├── boolean_simulation.py │ │ ├── buffered_quantum_state.py │ │ ├── catalyst_interface.py │ │ ├── catalyst_qjit.py │ │ ├── jaspification.py │ │ ├── profiler.py │ │ └── terminal_sampling.py │ ├── interpreter_tools │ │ ├── __init__.py │ │ ├── abstract_interpreter.py │ │ ├── dynamic_list.py │ │ └── interpreters │ │ │ ├── __init__.py │ │ │ ├── catalyst_interpreter.py │ │ │ ├── cl_func_interpreter.py │ │ │ ├── control_flow_interpretation.py │ │ │ ├── environment_flattening.py │ │ │ ├── jaspr_to_gate_interpreter.py │ │ │ ├── pjit_flattening.py │ │ │ ├── profiling_interpreter.py │ │ │ └── terminal_sampling_interpreter.py │ ├── jasp_expression │ │ ├── __init__.py │ │ ├── centerclass.py │ │ ├── control_transform.py │ │ ├── environment_collection.py │ │ ├── injection_transform.py │ │ └── inv_transform.py │ ├── optimization_tools │ │ ├── __init__.py │ │ ├── cobyla.py │ │ ├── optimize.py │ │ └── spsa.py │ ├── primitives │ │ ├── __init__.py │ │ ├── abstract_quantum_circuit.py │ │ ├── abstract_quantum_register.py │ │ ├── abstract_qubit.py │ │ ├── kernel_primitives.py │ │ ├── measurement_primitive.py │ │ ├── operation_primitive.py │ │ └── quantum_primitive.py │ ├── program_control │ │ ├── __init__.py │ │ ├── ev.py │ │ ├── jrange_iterator.py │ │ ├── prefix_control.py │ │ ├── rus.py │ │ └── sampling.py │ ├── testing_utils.py │ └── tracing_logic │ │ ├── __init__.py │ │ ├── dynamic_qubit_array.py │ │ ├── qaching.py │ │ ├── quantum_kernel.py │ │ ├── qv_flattening.py │ │ ├── static_arguments.py │ │ └── tracing_quantum_session.py │ ├── misc │ ├── GMS_tools.py │ ├── __init__.py │ ├── qrange.py │ └── utility.py │ ├── operators │ ├── __init__.py │ ├── fermionic │ │ ├── __init__.py │ │ ├── fermionic.py │ │ ├── fermionic_operator.py │ │ ├── fermionic_term.py │ │ ├── transformations.py │ │ ├── trotterization.py │ │ └── visualization.py │ ├── hamiltonian.py │ ├── hamiltonian_tools.py │ ├── qubit │ │ ├── __init__.py │ │ ├── bound_qubit_operator.py │ │ ├── bound_qubit_term.py │ │ ├── commutativity_tools.py │ │ ├── jasp_measurement.py │ │ ├── measurement.py │ │ ├── operator_factors.py │ │ ├── qubit_operator.py │ │ ├── qubit_term.py │ │ └── visualization.py │ └── test.py │ ├── permeability │ ├── __init__.py │ ├── permeability_dag.py │ ├── qc_transformations │ │ ├── __init__.py │ │ ├── light_cone_reduction.py │ │ ├── memory_management.py │ │ ├── qc_parallelization.py │ │ └── unqomp.py │ ├── type_checker.py │ └── uncomputation.py │ ├── qtypes │ ├── __init__.py │ ├── quantum_bool.py │ ├── quantum_char.py │ ├── quantum_float.py │ ├── quantum_modulus.py │ └── quantum_string.py │ └── simulator │ ├── __init__.py │ ├── bi_array_helper.py │ ├── bi_arrays.py │ ├── circuit_preprocessing.py │ ├── circuit_reordering.py │ ├── numerics_config.py │ ├── quantum_state.py │ ├── simulator.py │ ├── tensor_factor.py │ └── unitary_management.py └── tests ├── __init__.py ├── algorithms_tests ├── qaoa_tests │ ├── test_QAOAMkCS.py │ ├── test_QAOAQUBO.py │ ├── test_QAOA_TQA_warm_start.py │ ├── test_QAOAeThrLinTwo.py │ ├── test_QAOAmaxClique.py │ ├── test_QAOAmaxCut.py │ ├── test_QAOAmaxIndepSet.py │ ├── test_QAOAmaxSat.py │ ├── test_QAOAmaxSetPacking.py │ ├── test_QAOAminSetCover.py │ ├── test_QAOAtrain_func.py │ └── test_jasp_QAOAmaxCut.py ├── test_QIROMaxSat.py ├── test_QIROmaxClique.py ├── test_QITE_heisenberg.py ├── test_QMCI.py ├── test_backtracking.py ├── test_grovers_algorithm.py ├── test_quantum_counting.py └── test_sudoku.py ├── core_tests ├── mcx_tests │ ├── test_amy_mcx.py │ ├── test_gidney_mcx.py │ ├── test_jones_mcx.py │ ├── test_khattar_mcx.py │ └── test_mcx.py ├── test_GMS_environment_example.py ├── test_GXX_converter_example.py ├── test_GXX_gates_example.py ├── test_GZZ_gates_example.py ├── test_abstr_params_printing.py ├── test_abstract_parameters.py ├── test_array_entry_manipulation.py ├── test_conditional_environments_example.py ├── test_conjugation_environment.py ├── test_controlled_gates.py ├── test_custom_control.py ├── test_depth_calculation.py ├── test_gray_synthesis_example.py ├── test_hello_world.py ├── test_iteration_environment.py ├── test_loops.py ├── test_measurement_reduction.py ├── test_outcome_array.py ├── test_qompiler.py ├── test_quantum_array.py ├── test_quantum_dictionary.py ├── test_state_preparation.py ├── test_string_test.py ├── test_uncomputation_example.py ├── test_unitary_calculation.py └── tests_doc_examples.py ├── interface_tests ├── test_batched_backend.py ├── test_converter_QrispToQml.py ├── test_iqm_backend.py ├── test_qiskit_backend_client.py └── test_tket_converter.py ├── jax_tests ├── test_HHL_demo.py ├── test_LCU.py ├── test_arithmetic.py ├── test_basic_primitives.py ├── test_boolean_simulation.py ├── test_catalyst_interface.py ├── test_conjugation_env.py ├── test_control_compilation.py ├── test_control_flow_capturing.py ├── test_control_flow_interpretation.py ├── test_count_ops.py ├── test_custom_inverse.py ├── test_dynamic_mcx.py ├── test_environment_compilation.py ├── test_injection_operator.py ├── test_jasp_IQAE.py ├── test_jasp_IQPE.py ├── test_jasp_QAE.py ├── test_jasp_QuantumBool.py ├── test_jasp_QuantumFloat.py ├── test_jasp_amplitude_amplification.py ├── test_jasp_comparisons.py ├── test_jasp_custom_control.py ├── test_jasp_gidney_adder.py ├── test_jasp_grovers_algorithm.py ├── test_jasp_hamiltonian_simulation.py ├── test_jasp_minimize.py ├── test_jasp_qite.py ├── test_jasp_qswitch.py ├── test_jasp_quantum_array.py ├── test_jasp_quantum_counting.py ├── test_jaspify.py ├── test_prefix_control.py ├── test_qache.py ├── test_qasm_converter.py ├── test_qc_converter.py ├── test_quantum_kernel.py ├── test_qubit_array_fusion.py ├── test_rus.py ├── test_sampling.py ├── test_stim_simulation.py ├── test_template.py ├── test_terminal_sampling.py └── test_testing_function.py ├── operators_tests ├── test_VQE.py ├── test_VQE_electronic_structure.py ├── test_VQE_heisenberg.py ├── test_expectation_value.py ├── test_fermionic_hamiltonian_simulation.py ├── test_fermionic_term.py ├── test_fermionic_to_qubit.py ├── test_from_matrix_converter.py ├── test_hamiltonian.py ├── test_measurement_method.py ├── test_operators_LCU.py ├── test_pyscf_interface.py ├── test_qubit_hamiltonian_commutator.py ├── test_qubit_hamiltonian_simulation.py └── test_to_pauli_converter.py └── primitives_tests ├── arithmetic_tests ├── test_comparisons.py ├── test_fourier_adder.py ├── test_inpl_matrix_multiplication_example.py ├── test_matrix_multiplication_example.py ├── test_modular_arithmetic.py ├── test_qcla.py ├── test_quantum_arithmetic.py ├── test_quantum_division.py ├── test_quantum_integer_square_root.py ├── test_remaud_adder.py └── test_sc_gidney_adder.py ├── test_IQAE.py ├── test_QAE.py ├── test_amplitude_amplification.py ├── test_cycling_function.py ├── test_diagonal_hamiltonian_application.py ├── test_qswitch.py └── test_reflection.py /.flake8: -------------------------------------------------------------------------------- 1 | [flake8] 2 | max-line-length = 88 3 | extend-ignore = E203 -------------------------------------------------------------------------------- /.github/workflows/qrisp_test.yml: -------------------------------------------------------------------------------- 1 | name: Qrisp unit tests via Pytest 2 | 3 | on: 4 | push: 5 | pull_request: 6 | branches: [ main ] 7 | 8 | jobs: 9 | build: 10 | 11 | runs-on: ubuntu-latest 12 | timeout-minutes: 60 13 | strategy: 14 | matrix: 15 | python-version: ["3.10.*"] 16 | 17 | steps: 18 | - uses: actions/checkout@v3 19 | - name: Set up Python ${{ matrix.python-version }} 20 | uses: actions/setup-python@v4 21 | with: 22 | python-version: ${{ matrix.python-version }} 23 | - name: Install dependencies 24 | run: | 25 | python -m pip install --upgrade pip 26 | pip install pytest 27 | pip install -e ./ 28 | pip install --upgrade pennylane-catalyst 29 | pip install qiskit-aer 30 | pip install qiskit-iqm 31 | pip install pyscf 32 | pip install stim 33 | - name: Test with pytest 34 | run: | 35 | pytest 36 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.pyc 4 | *.egg-info/ 5 | *.eggs 6 | *.DS_Store 7 | 8 | /build/ 9 | /dist/ 10 | /documentation/build/ 11 | /src/qrisp.egg-info/ 12 | .idea 13 | /docuenv/ 14 | /eccvenv/ 15 | /python311venv/ 16 | /multiverseenv/ -------------------------------------------------------------------------------- /documentation/.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.pyc 4 | *.egg-info/ 5 | *.eggs 6 | *.DS_Store 7 | 8 | /build/ 9 | /dist/ 10 | /documentation/build/ 11 | /src/qrisp.egg-info/ 12 | .idea 13 | /docuenv/ 14 | /eccvenv/ 15 | /python311venv/ 16 | /multiverseenv/ -------------------------------------------------------------------------------- /documentation/Makefile: -------------------------------------------------------------------------------- 1 | # Minimal makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line, and also 5 | # from the environment for the first two. 6 | SPHINXOPTS ?= 7 | SPHINXBUILD ?= sphinx-build 8 | SOURCEDIR = source 9 | BUILDDIR = build 10 | 11 | # Put it first so that "make" without argument is like "make help". 12 | help: 13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 14 | 15 | .PHONY: help Makefile 16 | 17 | # Catch-all target: route all unknown targets to Sphinx using the new 18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 19 | %: Makefile 20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 21 | -------------------------------------------------------------------------------- /documentation/extensions.bat: -------------------------------------------------------------------------------- 1 | pip install -U sphinx_fontawesome sphinx_fontawesome sphinx_toolbox myst_parser nb2plots texext numpydoc pydata_sphinx_theme nbsphinx sphinx-sitemap sphinx-copybutton sphinx-design sphinx-thebe -------------------------------------------------------------------------------- /documentation/make.bat: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | pushd %~dp0 4 | 5 | REM Command file for Sphinx documentation 6 | 7 | if "%SPHINXBUILD%" == "" ( 8 | set SPHINXBUILD=sphinx-build 9 | ) 10 | set SOURCEDIR=source 11 | set BUILDDIR=build 12 | 13 | %SPHINXBUILD% >NUL 2>NUL 14 | if errorlevel 9009 ( 15 | echo. 16 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx 17 | echo.installed, then set the SPHINXBUILD environment variable to point 18 | echo.to the full path of the 'sphinx-build' executable. Alternatively you 19 | echo.may add the Sphinx directory to PATH. 20 | echo. 21 | echo.If you don't have Sphinx installed, grab it from 22 | echo.https://www.sphinx-doc.org/ 23 | exit /b 1 24 | ) 25 | 26 | if "%1" == "" goto help 27 | 28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 29 | goto end 30 | 31 | :help 32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 33 | 34 | :end 35 | popd 36 | -------------------------------------------------------------------------------- /documentation/requirements_doc.txt: -------------------------------------------------------------------------------- 1 | sphinx>=7.0 2 | sphinx-toolbox>=3.5.0 3 | nbsphinx 4 | myst-parser 5 | texext 6 | numpydoc 7 | sphinx-sitemap 8 | sphinx-copybutton 9 | sphinx-design 10 | sphinx-thebe 11 | pydata-sphinx-theme 12 | -------------------------------------------------------------------------------- /documentation/source/Qrisp_PPT_Grafiken_v2.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/Qrisp_PPT_Grafiken_v2.pptx -------------------------------------------------------------------------------- /documentation/source/_extra/google1368592414d639ea.html: -------------------------------------------------------------------------------- 1 | google-site-verification: google1368592414d639ea.html -------------------------------------------------------------------------------- /documentation/source/_static/1200px-Fraunhofer-Gesellschaft_2009_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/1200px-Fraunhofer-Gesellschaft_2009_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/BeH2_PEC_4_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/BeH2_PEC_4_2.png -------------------------------------------------------------------------------- /documentation/source/_static/BeH2_PEC_6_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/BeH2_PEC_6_2.png -------------------------------------------------------------------------------- /documentation/source/_static/DiagonalHamiltonianApplication.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/DiagonalHamiltonianApplication.png -------------------------------------------------------------------------------- /documentation/source/_static/H2_PEC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/H2_PEC.png -------------------------------------------------------------------------------- /documentation/source/_static/HHL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/HHL.png -------------------------------------------------------------------------------- /documentation/source/_static/IBM-Q.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/IBM-Q.jpg -------------------------------------------------------------------------------- /documentation/source/_static/Ising_chain_N=6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/Ising_chain_N=6.png -------------------------------------------------------------------------------- /documentation/source/_static/LCU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/LCU.png -------------------------------------------------------------------------------- /documentation/source/_static/PhasePolynomialApplication.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/PhasePolynomialApplication.png -------------------------------------------------------------------------------- /documentation/source/_static/abakus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/abakus.png -------------------------------------------------------------------------------- /documentation/source/_static/backtracking_plot.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | """ 3 | Created on Wed Sep 27 16:13:02 2023 4 | 5 | @author: sea 6 | """ 7 | 8 | from qrisp.quantum_backtracking import * 9 | from qrisp import * 10 | 11 | def accept(tree): 12 | return QuantumBool() 13 | 14 | @auto_uncompute 15 | def reject(tree): 16 | return (tree.h == 1) & (tree.branch_qa[1] == 1) 17 | 18 | 19 | max_depth = 3 20 | tree = QuantumBacktrackingTree(max_depth, QuantumFloat(1), accept, reject) 21 | 22 | tree.init_node([]) 23 | 24 | tree.quantum_step() 25 | tree.quantum_step() 26 | tree.quantum_step() 27 | tree.quantum_step() 28 | 29 | tree.visualize_statevector() 30 | import matplotlib.pyplot as plt 31 | # plt.savefig("test.svg", format = "svg") 32 | -------------------------------------------------------------------------------- /documentation/source/_static/bmwk_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/bmwk_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/eclipse_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/eclipse_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/ecplipse_font.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/ecplipse_font.png -------------------------------------------------------------------------------- /documentation/source/_static/eleqtron_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/eleqtron_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/eu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/eu.png -------------------------------------------------------------------------------- /documentation/source/_static/fraunhofer_fokus_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/fraunhofer_fokus_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/heisenberg_energy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/heisenberg_energy.png -------------------------------------------------------------------------------- /documentation/source/_static/heisenberg_lattice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/heisenberg_lattice.png -------------------------------------------------------------------------------- /documentation/source/_static/heisenberg_qite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/heisenberg_qite.png -------------------------------------------------------------------------------- /documentation/source/_static/hello_world.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/hello_world.png -------------------------------------------------------------------------------- /documentation/source/_static/hybrid_realtime.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/hybrid_realtime.png -------------------------------------------------------------------------------- /documentation/source/_static/hydrogen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/hydrogen.png -------------------------------------------------------------------------------- /documentation/source/_static/incubating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/incubating.png -------------------------------------------------------------------------------- /documentation/source/_static/iqm_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/iqm_logo.jpg -------------------------------------------------------------------------------- /documentation/source/_static/maxClique.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/maxClique.png -------------------------------------------------------------------------------- /documentation/source/_static/maxIndepSet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/maxIndepSet.png -------------------------------------------------------------------------------- /documentation/source/_static/maxcut_jasp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/maxcut_jasp.png -------------------------------------------------------------------------------- /documentation/source/_static/maxcut_qite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/maxcut_qite.png -------------------------------------------------------------------------------- /documentation/source/_static/maxcut_tutorial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/maxcut_tutorial.png -------------------------------------------------------------------------------- /documentation/source/_static/plug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/plug.png -------------------------------------------------------------------------------- /documentation/source/_static/puzzle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/puzzle.png -------------------------------------------------------------------------------- /documentation/source/_static/qrisp_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/qrisp_logo.png -------------------------------------------------------------------------------- /documentation/source/_static/quantum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/quantum.png -------------------------------------------------------------------------------- /documentation/source/_static/quantumcomputer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/quantumcomputer.png -------------------------------------------------------------------------------- /documentation/source/_static/recycling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/recycling.png -------------------------------------------------------------------------------- /documentation/source/_static/torus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/torus.png -------------------------------------------------------------------------------- /documentation/source/_static/tutorial_statevector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/tutorial_statevector.png -------------------------------------------------------------------------------- /documentation/source/_static/typed_variables_pic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/typed_variables_pic.png -------------------------------------------------------------------------------- /documentation/source/_static/vqeH2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/_static/vqeH2.png -------------------------------------------------------------------------------- /documentation/source/_templates/layout.html: -------------------------------------------------------------------------------- 1 | {% extends "!layout.html" %} 2 | 3 | {% block sidebar %} 4 | 8 | {% endblock %} 9 | 10 | 11 | {% block extrahead %} 12 | 13 | 14 | 15 | 16 | 17 | 18 | {% endblock %} -------------------------------------------------------------------------------- /documentation/source/_templates/slack_link.html: -------------------------------------------------------------------------------- 1 | {% block sidebar %} 2 | 10 | {% endblock %} -------------------------------------------------------------------------------- /documentation/source/_templates/thebe_button.html: -------------------------------------------------------------------------------- 1 | {% block sidebar %} 2 | 13 | {% endblock %} -------------------------------------------------------------------------------- /documentation/source/general/changelog/index.rst: -------------------------------------------------------------------------------- 1 | Changelog 2 | --------- 3 | 4 | Welcome to the changelog page for Qrisp. Here, you'll find a detailed account of the evolution and enhancements that have shaped the framework. From feature introductions to performance optimizations and bug fixes, this changelog provides a chronological insight into the iterative journey we've undertaken to push the boundaries of quantum programming. Stay tuned to discover how Qrisp continues to pave the way for the quantum future. 5 | 6 | Version history 7 | --------------- 8 | 9 | .. toctree:: 10 | :maxdepth: 2 11 | 12 | 0.7 13 | 0.6 14 | 0.5 15 | 0.4 16 | 0.3 17 | 0.2 18 | 0.1 19 | 20 | -------------------------------------------------------------------------------- /documentation/source/general/changelog/openfermion_comparison.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/changelog/openfermion_comparison.png -------------------------------------------------------------------------------- /documentation/source/general/changelog/optimization_loop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/changelog/optimization_loop.png -------------------------------------------------------------------------------- /documentation/source/general/changelog/structure_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/changelog/structure_overview.png -------------------------------------------------------------------------------- /documentation/source/general/setup.rst: -------------------------------------------------------------------------------- 1 | .. _setup: 2 | 3 | Setup 4 | ===== 5 | 6 | Qrisp is written in pure Python implying it can be installed conveniently with `PyPi `_. Currently Python version 3.8 - 3.11 have been confirmed to work with Qrisp. 7 | 8 | Simply execute: 9 | 10 | :: 11 | 12 | pip install qrisp 13 | 14 | 15 | Visit our :ref:`tutorial` page to get started with building your first algorithms! -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/Quantum-Computer_Berlin_Ai-generated_korr.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/Quantum-Computer_Berlin_Ai-generated_korr.jpg -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/hackathon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/hackathon.png -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/networking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/networking.png -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/quantum_girl.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/quantum_girl.jpg -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/talk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/talk.png -------------------------------------------------------------------------------- /documentation/source/general/thinq_qrisp/tutorial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/thinq_qrisp/tutorial.png -------------------------------------------------------------------------------- /documentation/source/general/tutorial/QAOAtutorial/all_to_all.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/QAOAtutorial/all_to_all.PNG -------------------------------------------------------------------------------- /documentation/source/general/tutorial/QAOAtutorial/channelled.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/QAOAtutorial/channelled.PNG -------------------------------------------------------------------------------- /documentation/source/general/tutorial/QAOAtutorial/multi_slit_graphic.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/QAOAtutorial/multi_slit_graphic.pptx -------------------------------------------------------------------------------- /documentation/source/general/tutorial/hydrogen_with_axes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/hydrogen_with_axes.png -------------------------------------------------------------------------------- /documentation/source/general/tutorial/sudoku.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/sudoku.png -------------------------------------------------------------------------------- /documentation/source/general/tutorial/tutorial_statevector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/general/tutorial/tutorial_statevector.png -------------------------------------------------------------------------------- /documentation/source/qiskit_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/qiskit_logo.png -------------------------------------------------------------------------------- /documentation/source/qrisp_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/qrisp_logo.png -------------------------------------------------------------------------------- /documentation/source/qrisp_wheel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/qrisp_wheel.png -------------------------------------------------------------------------------- /documentation/source/qrisp_wheel_.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/qrisp_wheel_.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/Grover.rst: -------------------------------------------------------------------------------- 1 | .. _grovers_alg: 2 | 3 | Grover's Algorithm 4 | ================== 5 | 6 | .. currentmodule:: qrisp.grover 7 | 8 | .. autofunction:: grovers_alg -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/QITE.rst: -------------------------------------------------------------------------------- 1 | .. _QITE: 2 | 3 | Quantum Imaginary-Time Evolution 4 | ================================ 5 | 6 | .. currentmodule:: qrisp.qite 7 | 8 | .. autofunction:: QITE 9 | 10 | In the Examples, we also show how to :ref:`solve MaxCut with QITE `. -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/QMCI.rst: -------------------------------------------------------------------------------- 1 | .. _QMCI: 2 | 3 | Quantum Monte Carlo Integration 4 | =============================== 5 | 6 | .. currentmodule:: qrisp.qmci 7 | 8 | .. autofunction:: QMCI -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/QuantumBacktrackingTree.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumBacktrackingTree: 2 | 3 | Quantum Backtracking 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.quantum_backtracking 7 | .. autoclass:: QuantumBacktrackingTree 8 | 9 | Methods 10 | ======= 11 | 12 | Tree quantum operations 13 | ----------------------- 14 | 15 | .. autosummary:: 16 | :toctree: generated/ 17 | 18 | QuantumBacktrackingTree.qstep_diffuser 19 | QuantumBacktrackingTree.quantum_step 20 | QuantumBacktrackingTree.estimate_phase 21 | QuantumBacktrackingTree.find_solution 22 | QuantumBacktrackingTree.init_phi 23 | QuantumBacktrackingTree.init_node 24 | 25 | 26 | Tree evaluation 27 | --------------- 28 | 29 | .. autosummary:: 30 | :toctree: generated/ 31 | 32 | QuantumBacktrackingTree.statevector 33 | QuantumBacktrackingTree.visualize_statevector 34 | QuantumBacktrackingTree.statevector_graph 35 | 36 | 37 | Miscellaneous 38 | ------------- 39 | 40 | .. autosummary:: 41 | :toctree: generated/ 42 | 43 | QuantumBacktrackingTree.subtree 44 | QuantumBacktrackingTree.copy 45 | QuantumBacktrackingTree.path_decoder 46 | -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/Shor.rst: -------------------------------------------------------------------------------- 1 | .. _Shor: 2 | 3 | Shor's algorithm 4 | ================ 5 | 6 | In the realm of quantum computing, where classical limitations are challenged and new horizons are explored, Shor's Algorithm stands as a testament to the transformative potential of quantum mechanics in the field of cryptography. Developed by mathematician Peter Shor in 1994, this groundbreaking algorithm has the power to revolutionize the world of cryptography by efficiently factoring large numbers—once considered an insurmountable task for classical computers. 7 | 8 | Qrisp provides a dead simple interface to integer factorization using your own backend. For details how this algorithm is implemented, please check the `Shor's algorithm tutorial `_. 9 | 10 | .. currentmodule:: qrisp.shor 11 | 12 | .. autofunction:: shors_alg 13 | 14 | .. _crypto_tools: 15 | 16 | Cryptography tools 17 | ================== 18 | 19 | These tools can be utilized to :ref:`spy on your enemies `. 20 | 21 | .. currentmodule:: qrisp.shor 22 | 23 | .. autosummary:: 24 | :toctree: generated/ 25 | 26 | rsa_encrypt 27 | rsa_decrypt 28 | rsa_encrypt_string 29 | rsa_decrypt_string -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/phi_state_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/generated/phi_state_plot.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.copy.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.copy 2 | ======================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.copy -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.estimate_phase.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.estimate\_phase 2 | =================================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.estimate_phase -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.find_solution.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.find\_solution 2 | ================================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.find_solution -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.init_node.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.init\_node 2 | ============================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.init_node -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.init_phi.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.init\_phi 2 | ============================================================= 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.init_phi -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.path_decoder.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.path\_decoder 2 | ================================================================= 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.path_decoder -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.qstep_diffuser.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.qstep\_diffuser 2 | =================================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.qstep_diffuser -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.quantum_step.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.quantum\_step 2 | ================================================================= 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.quantum_step -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.statevector.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.statevector 2 | =============================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.statevector -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.statevector_graph.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.statevector\_graph 2 | ====================================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.statevector_graph -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.subtree.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.subtree 2 | =========================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.subtree -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.quantum_backtracking.QuantumBacktrackingTree.visualize_statevector.rst: -------------------------------------------------------------------------------- 1 | qrisp.quantum\_backtracking.QuantumBacktrackingTree.visualize\_statevector 2 | ========================================================================== 3 | 4 | .. currentmodule:: qrisp.quantum_backtracking 5 | 6 | .. automethod:: QuantumBacktrackingTree.visualize_statevector -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.shor.rsa_decrypt.rst: -------------------------------------------------------------------------------- 1 | qrisp.shor.rsa\_decrypt 2 | ======================= 3 | 4 | .. currentmodule:: qrisp.shor 5 | 6 | .. autofunction:: rsa_decrypt -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.shor.rsa_decrypt_string.rst: -------------------------------------------------------------------------------- 1 | qrisp.shor.rsa\_decrypt\_string 2 | =============================== 3 | 4 | .. currentmodule:: qrisp.shor 5 | 6 | .. autofunction:: rsa_decrypt_string -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.shor.rsa_encrypt.rst: -------------------------------------------------------------------------------- 1 | qrisp.shor.rsa\_encrypt 2 | ======================= 3 | 4 | .. currentmodule:: qrisp.shor 5 | 6 | .. autofunction:: rsa_encrypt -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/qrisp.shor.rsa_encrypt_string.rst: -------------------------------------------------------------------------------- 1 | qrisp.shor.rsa\_encrypt\_string 2 | =============================== 3 | 4 | .. currentmodule:: qrisp.shor 5 | 6 | .. autofunction:: rsa_encrypt_string -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/generated/root_state_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/generated/root_state_plot.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/QAOABenchmark.rst: -------------------------------------------------------------------------------- 1 | .. _QAOABenchmark: 2 | 3 | QAOABenchmark 4 | ================= 5 | 6 | .. currentmodule:: qrisp.qaoa 7 | .. autoclass:: QAOABenchmark 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QAOABenchmark.evaluate 16 | QAOABenchmark.visualize 17 | QAOABenchmark.rank 18 | QAOABenchmark.save 19 | QAOABenchmark.load -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/QAOAMixers.rst: -------------------------------------------------------------------------------- 1 | .. _QAOAMixers: 2 | 3 | .. currentmodule:: qrisp.qaoa 4 | 5 | Mixers 6 | ====== 7 | 8 | Qrisp comes with a variety of predefined mixers to tackle various types of problem instances: 9 | 10 | .. autosummary:: 11 | :toctree: generated/ 12 | 13 | RX_mixer 14 | RY_mixer 15 | RZ_mixer 16 | XY_mixer 17 | grover_mixer 18 | constrained_mixer_gen 19 | controlled_RX_mixer_gen 20 | -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/QAOAProblem.rst: -------------------------------------------------------------------------------- 1 | .. _QAOAProblem: 2 | 3 | QAOAProblem 4 | =========== 5 | 6 | .. currentmodule:: qrisp.qaoa 7 | .. autoclass:: QAOAProblem 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QAOAProblem.run 16 | QAOAProblem.train_function 17 | QAOAProblem.compile_circuit 18 | QAOAProblem.benchmark 19 | QAOAProblem.set_init_function 20 | QAOAProblem.visualize_cost -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/benchmark_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/qaoa/generated/benchmark_plot.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOABenchmark.evaluate.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOABenchmark.evaluate 2 | ================================= 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOABenchmark.evaluate -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOABenchmark.load.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOABenchmark.load 2 | ============================= 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOABenchmark.load -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOABenchmark.rank.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOABenchmark.rank 2 | ============================= 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOABenchmark.rank -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOABenchmark.save.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOABenchmark.save 2 | ============================= 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOABenchmark.save -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOABenchmark.visualize.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOABenchmark.visualize 2 | ================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOABenchmark.visualize -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.benchmark.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.benchmark 2 | ================================ 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.benchmark -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.compile_circuit.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.compile\_circuit 2 | ======================================= 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.compile_circuit -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.run.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.run 2 | ========================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.run -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.set_init_function.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.set\_init\_function 2 | ========================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.set_init_function -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.train_function.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.train\_function 2 | ====================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.train_function -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.QAOAProblem.visualize_cost.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.QAOAProblem.visualize\_cost 2 | ====================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. automethod:: QAOAProblem.visualize_cost -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.RX_mixer.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.RX\_mixer 2 | ==================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: RX_mixer -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.RY_mixer.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.RY\_mixer 2 | ==================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: RY_mixer -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.RZ_mixer.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.RZ\_mixer 2 | ==================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: RZ_mixer -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.XY_mixer.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.XY\_mixer 2 | ==================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: XY_mixer -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.constrained_mixer_gen.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.constrained\_mixer\_gen 2 | ================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: constrained_mixer_gen -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.controlled_RX_mixer_gen.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.controlled\_RX\_mixer\_gen 2 | ===================================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: controlled_RX_mixer_gen -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/generated/qrisp.qaoa.grover_mixer.rst: -------------------------------------------------------------------------------- 1 | qrisp.qaoa.grover\_mixer 2 | ======================== 3 | 4 | .. currentmodule:: qrisp.qaoa 5 | 6 | .. autofunction:: grover_mixer -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/implementations/mKCS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/qaoa/implementations/mKCS.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/implementations/maxClique.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/qaoa/implementations/maxClique.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/implementations/maxCut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/qaoa/implementations/maxCut.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qaoa/implementations/maxIndepSet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/qaoa/implementations/maxIndepSet.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qiro/QIROImplementations.rst: -------------------------------------------------------------------------------- 1 | 2 | .. _QIROImplementations: 3 | 4 | .. currentmodule:: qrisp.qiro 5 | 6 | Implementations 7 | =============== 8 | 9 | .. toctree:: 10 | :hidden: 11 | 12 | implementations/QIROMaxClique 13 | implementations/QIROMaxIndep 14 | implementations/QIROMaxSat 15 | implementations/QIROMaxSetPack 16 | 17 | 18 | Here, you can find the QIRO implementations for specific problem instances, namely: 19 | 20 | 21 | * :ref:`MaxIndependentSet ` 22 | * :ref:`MaxClique ` 23 | * :ref:`MaxSat ` 24 | * :ref:`MaxSetPacking ` 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qiro/QIROProblem.rst: -------------------------------------------------------------------------------- 1 | .. _QIROProblem: 2 | 3 | .. currentmodule:: qrisp.qiro 4 | 5 | 6 | QIROProblem 7 | =========== 8 | 9 | .. autoclass:: QIROProblem 10 | 11 | 12 | Methods 13 | ======= 14 | 15 | .. autosummary:: 16 | :toctree: generated/ 17 | 18 | QIROProblem.run_qiro 19 | 20 | -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/qiro/generated/qrisp.qiro.QIROProblem.run_qiro.rst: -------------------------------------------------------------------------------- 1 | qrisp.qiro.QIROProblem.run\_qiro 2 | ================================ 3 | 4 | .. currentmodule:: qrisp.qiro 5 | 6 | .. automethod:: QIROProblem.run_qiro -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/quantum_counting.rst: -------------------------------------------------------------------------------- 1 | .. _QCounting: 2 | 3 | Quantum Counting 4 | ================ 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: quantum_counting -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/root_state_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/root_state_plot.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/VQEBenchmark.rst: -------------------------------------------------------------------------------- 1 | .. _VQEBenchmark: 2 | 3 | VQEBenchmark 4 | ================= 5 | 6 | .. currentmodule:: qrisp.vqe 7 | .. autoclass:: VQEBenchmark 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | VQEBenchmark.evaluate 16 | VQEBenchmark.visualize 17 | VQEBenchmark.rank 18 | VQEBenchmark.save 19 | VQEBenchmark.load -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/VQEImplementations.rst: -------------------------------------------------------------------------------- 1 | 2 | .. _VQEImplementations: 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | Implementations 7 | =============== 8 | 9 | .. toctree:: 10 | :hidden: 11 | 12 | vqeProblems/heisenberg 13 | vqeProblems/electronic_structure 14 | 15 | Here, you can find VQE implementations for specific problems: 16 | 17 | .. list-table:: 18 | :widths: 45 45 10 19 | :header-rows: 1 20 | 21 | * - PROBLEM INSTANCE 22 | - ANSATZ TYPE 23 | - IMPLEMENTED IN QRISP 24 | * - :ref:`Heisenberg model ` 25 | - Hamiltonian Variational Ansatz 26 | - ✅ 27 | * - :ref:`Electronic structure ` 28 | - QCCSD 29 | - ✅ -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/VQEProblem.rst: -------------------------------------------------------------------------------- 1 | .. _VQEProblem: 2 | 3 | VQEProblem 4 | ========== 5 | 6 | .. currentmodule:: qrisp.vqe 7 | .. autoclass:: VQEProblem 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | VQEProblem.set_init_function 16 | VQEProblem.run 17 | VQEProblem.train_function 18 | VQEProblem.compile_circuit 19 | VQEProblem.benchmark 20 | VQEProblem.visualize_energy -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEBenchmark.evaluate.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEBenchmark.evaluate 2 | =============================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEBenchmark.evaluate -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEBenchmark.load.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEBenchmark.load 2 | =========================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEBenchmark.load -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEBenchmark.rank.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEBenchmark.rank 2 | =========================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEBenchmark.rank -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEBenchmark.save.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEBenchmark.save 2 | =========================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEBenchmark.save -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEBenchmark.visualize.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEBenchmark.visualize 2 | ================================ 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEBenchmark.visualize -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.benchmark.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.benchmark 2 | ============================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.benchmark -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.compile_circuit.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.compile\_circuit 2 | ===================================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.compile_circuit -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.run.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.run 2 | ======================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.run -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.set_init_function.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.set\_init\_function 2 | ======================================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.set_init_function -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.train_function.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.train\_function 2 | ==================================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.train_function -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/qrisp.vqe.VQEProblem.visualize_energy.rst: -------------------------------------------------------------------------------- 1 | qrisp.vqe.VQEProblem.visualize\_energy 2 | ====================================== 3 | 4 | .. currentmodule:: qrisp.vqe 5 | 6 | .. automethod:: VQEProblem.visualize_energy -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/generated/vqe_benchmark_plot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Algorithms/vqe/generated/vqe_benchmark_plot.png -------------------------------------------------------------------------------- /documentation/source/reference/Algorithms/vqe/vqeProblems/heisenberg.rst: -------------------------------------------------------------------------------- 1 | .. _VQEHeisenberg: 2 | 3 | VQE Heisenberg model 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.vqe.problems.heisenberg 7 | 8 | We proivde an implementation of the Variational Quantum Eigensolver for Heisenberg models following `Bosse and Montanaro `_ and `Kattemölle and van Wezel `_. 9 | 10 | Heisenberg problem 11 | ------------------ 12 | 13 | .. autofunction:: heisenberg_problem 14 | 15 | Hamiltonian 16 | ----------- 17 | 18 | .. autofunction:: create_heisenberg_hamiltonian 19 | 20 | Ansatz 21 | ------ 22 | 23 | .. autofunction:: create_heisenberg_ansatz 24 | 25 | .. autofunction:: create_heisenberg_init_function -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/AQTBackend.rst: -------------------------------------------------------------------------------- 1 | .. _AQTBackend: 2 | 3 | AQTBackend 4 | ========== 5 | 6 | .. currentmodule:: qrisp.interface 7 | 8 | .. autofunction:: AQTBackend 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/BackendClient.rst: -------------------------------------------------------------------------------- 1 | .. _BackendClient: 2 | 3 | BackendClient 4 | ============== 5 | 6 | .. currentmodule:: qrisp.interface.qunicorn 7 | .. autoclass:: BackendClient 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | BackendClient.__init__ 16 | BackendClient.run 17 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/BackendServer.rst: -------------------------------------------------------------------------------- 1 | .. _BackendServer: 2 | 3 | BackendServer 4 | ============== 5 | 6 | .. currentmodule:: qrisp.interface.qunicorn 7 | .. autoclass:: BackendServer 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | BackendServer.start 16 | 17 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/BatchedBackend.rst: -------------------------------------------------------------------------------- 1 | .. _BatchedBackend: 2 | 3 | BatchedBackend 4 | ============== 5 | 6 | .. currentmodule:: qrisp.interface 7 | 8 | .. autoclass:: BatchedBackend 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/IQMBackend.rst: -------------------------------------------------------------------------------- 1 | .. _IQMBackend: 2 | 3 | IQMBackend 4 | ============== 5 | 6 | .. currentmodule:: qrisp.interface 7 | 8 | .. autofunction:: IQMBackend 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/QiskitBackend.rst: -------------------------------------------------------------------------------- 1 | .. _QiskitBackend: 2 | 3 | QiskitBackend 4 | ============= 5 | 6 | .. currentmodule:: qrisp.interface 7 | .. autoclass:: QiskitBackend 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/QiskitRuntimeBackend.rst: -------------------------------------------------------------------------------- 1 | .. _QiskitRuntimeBackend: 2 | 3 | QiskitRuntimeBackend 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.interface 7 | .. autoclass:: QiskitRuntimeBackend 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QiskitRuntimeBackend.close_session -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/VirtualBackend.rst: -------------------------------------------------------------------------------- 1 | .. _VirtualBackend: 2 | 3 | VirtualBackend 4 | ============== 5 | 6 | .. currentmodule:: qrisp.interface 7 | 8 | 9 | Options 10 | ------- 11 | From ``qrisp.interface`` is it possible to import the following kind of backends. 12 | 13 | .. csv-table:: 14 | :header: "Option", "Description" 15 | :widths: 20, 60 16 | 17 | ":ref:`QiskitBackend`", "Allows to use a Qiskit backend (e.g. an IBM quantum computer)." 18 | ":ref:`QiskitRuntimeBackend`", "Allows to use a Qiskit Runtime backend, exploiting the Qiskit's Sampler primitive." 19 | ":ref:`IQMBackend`", "Allows to use an IQM quantum computer as a backend via IQM Resonance." 20 | ":ref:`AQTBackend`", "Allows to use an AQT quantum computer as a backend via AQT Cloud." 21 | 22 | 23 | .. autoclass:: VirtualBackend 24 | 25 | Methods 26 | ======= 27 | 28 | .. autosummary:: 29 | :toctree: generated/ 30 | 31 | VirtualBackend.__init__ 32 | -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/generated/qrisp.interface.QiskitRuntimeBackend.close_session.rst: -------------------------------------------------------------------------------- 1 | qrisp.interface.QiskitRuntimeBackend.close\_session 2 | =================================================== 3 | 4 | .. currentmodule:: qrisp.interface 5 | 6 | .. automethod:: QiskitRuntimeBackend.close_session -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/generated/qrisp.interface.VirtualBackend.__init__.rst: -------------------------------------------------------------------------------- 1 | qrisp.interface.VirtualBackend.\_\_init\_\_ 2 | =========================================== 3 | 4 | .. currentmodule:: qrisp.interface 5 | 6 | .. automethod:: VirtualBackend.__init__ -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/generated/qrisp.interface.qunicorn.BackendClient.__init__.rst: -------------------------------------------------------------------------------- 1 | qrisp.interface.qunicorn.BackendClient.\_\_init\_\_ 2 | =================================================== 3 | 4 | .. currentmodule:: qrisp.interface.qunicorn 5 | 6 | .. automethod:: BackendClient.__init__ -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/generated/qrisp.interface.qunicorn.BackendClient.run.rst: -------------------------------------------------------------------------------- 1 | qrisp.interface.qunicorn.BackendClient.run 2 | ========================================== 3 | 4 | .. currentmodule:: qrisp.interface.qunicorn 5 | 6 | .. automethod:: BackendClient.run -------------------------------------------------------------------------------- /documentation/source/reference/Backend Interface/generated/qrisp.interface.qunicorn.BackendServer.start.rst: -------------------------------------------------------------------------------- 1 | qrisp.interface.qunicorn.BackendServer.start 2 | ============================================ 3 | 4 | .. currentmodule:: qrisp.interface.qunicorn 5 | 6 | .. automethod:: BackendServer.start -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/Clbit.rst: -------------------------------------------------------------------------------- 1 | Clbit 2 | ===== 3 | 4 | .. currentmodule:: qrisp 5 | .. autoclass:: Clbit 6 | -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/Instruction.rst: -------------------------------------------------------------------------------- 1 | .. _Instruction: 2 | 3 | Instruction 4 | =========== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: Instruction 8 | 9 | 10 | Methods 11 | ======= 12 | 13 | .. autosummary:: 14 | :toctree: generated/ 15 | 16 | Instruction.copy 17 | Instruction.merge 18 | 19 | -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/Operation.rst: -------------------------------------------------------------------------------- 1 | .. _Operation: 2 | 3 | Operation 4 | ========= 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: Operation 8 | 9 | 10 | Methods 11 | ======= 12 | 13 | .. autosummary:: 14 | :toctree: generated/ 15 | 16 | Operation.copy 17 | Operation.get_unitary 18 | Operation.inverse 19 | Operation.control 20 | Operation.bind_parameters 21 | 22 | -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/Qubit.rst: -------------------------------------------------------------------------------- 1 | .. _Qubit: 2 | 3 | Qubit 4 | ===== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: Qubit 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Instruction.copy.rst: -------------------------------------------------------------------------------- 1 | qrisp.Instruction.copy 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Instruction.copy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Instruction.merge.rst: -------------------------------------------------------------------------------- 1 | qrisp.Instruction.merge 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Instruction.merge -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Operation.bind_parameters.rst: -------------------------------------------------------------------------------- 1 | qrisp.Operation.bind\_parameters 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Operation.bind_parameters -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Operation.control.rst: -------------------------------------------------------------------------------- 1 | qrisp.Operation.control 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Operation.control -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Operation.copy.rst: -------------------------------------------------------------------------------- 1 | qrisp.Operation.copy 2 | ==================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Operation.copy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Operation.get_unitary.rst: -------------------------------------------------------------------------------- 1 | qrisp.Operation.get\_unitary 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Operation.get_unitary -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.Operation.inverse.rst: -------------------------------------------------------------------------------- 1 | qrisp.Operation.inverse 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: Operation.inverse -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.add_clbit.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.add\_clbit 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.add_clbit -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.add_qubit.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.add\_qubit 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.add_qubit -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.append.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.append 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.append -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.bind_parameters.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.bind\_parameters 2 | ===================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.bind_parameters -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.ccx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.ccx 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.ccx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.clearcopy.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.clearcopy 2 | ============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.clearcopy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.cnot_depth.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.cnot\_depth 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.cnot_depth -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.compare_unitary.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.compare\_unitary 2 | ===================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.compare_unitary -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.copy.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.copy 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.copy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.count_ops.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.count\_ops 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.count_ops -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.cp.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.cp 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.cp -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.cx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.cx 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.cx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.cy.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.cy 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.cy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.cz.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.cz 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.cz -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.depth.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.depth 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.depth -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.extend.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.extend 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.extend -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.from_qasm_file.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.from\_qasm\_file 2 | ===================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.from_qasm_file -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.from_qasm_str.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.from\_qasm\_str 2 | ==================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.from_qasm_str -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.from_qiskit.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.from\_qiskit 2 | ================================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.from_qiskit -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.get_unitary.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.get\_unitary 2 | ================================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.get_unitary -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.gphase.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.gphase 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.gphase -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.h.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.h 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.h -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.id.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.id 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.id -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.inverse.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.inverse 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.inverse -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.mcx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.mcx 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.mcx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.measure.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.measure 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.measure -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.num_qubits.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.num\_qubits 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.num_qubits -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.p.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.p 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.p -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.qasm.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.qasm 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.qasm -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.reset.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.reset 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.reset -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.run.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.run 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.run -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.rx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.rx 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.rx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.rxx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.rxx 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.rxx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.ry.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.ry 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.ry -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.rz.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.rz 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.rz -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.rzz.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.rzz 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.rzz -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.s.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.s 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.s -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.s_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.s\_dg 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.s_dg -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.statevector_array.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.statevector\_array 2 | ======================================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.statevector_array -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.swap.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.swap 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.swap -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.sx.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.sx 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.sx -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.sx_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.sx\_dg 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.sx_dg -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.t.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.t 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.t -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.t_depth.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.t\_depth 2 | ============================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.t_depth -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.t_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.t\_dg 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.t_dg -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_gate.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_gate 2 | ============================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_gate -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_latex.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_latex 2 | ============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_latex -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_op.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_op 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_op -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_pennylane.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_pennylane 2 | ================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_pennylane -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_pytket.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_pytket 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_pytket -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.to_qiskit.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.to\_qiskit 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.to_qiskit -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.transpile.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.transpile 2 | ============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.transpile -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.u3.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.u3 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.u3 -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.unitary.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.unitary 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.unitary -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.x.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.x 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.x -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.xxyy.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.xxyy 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.xxyy -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.y.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.y 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.y -------------------------------------------------------------------------------- /documentation/source/reference/Circuit Manipulation/generated/qrisp.QuantumCircuit.z.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumCircuit.z 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumCircuit.z -------------------------------------------------------------------------------- /documentation/source/reference/Core/QuantumArray.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumArray: 2 | 3 | QuantumArray 4 | ============ 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumArray 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QuantumArray.delete 16 | QuantumArray.duplicate 17 | QuantumArray.encode 18 | QuantumArray.get_measurement 19 | QuantumArray.most_likely 20 | 21 | Array Restructuring 22 | ------------------- 23 | 24 | .. note:: 25 | 26 | These methods never allocate additional qubits and instead return a 27 | `"view" `_. 28 | 29 | .. autosummary:: 30 | :toctree: generated/ 31 | 32 | QuantumArray.concatenate 33 | QuantumArray.flatten 34 | QuantumArray.ravel 35 | QuantumArray.reshape 36 | QuantumArray.swapaxes 37 | QuantumArray.transpose 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /documentation/source/reference/Core/QuantumDictionary.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumDictionary: 2 | 3 | QuantumDictionary 4 | ================= 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumDictionary 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QuantumDictionary.load -------------------------------------------------------------------------------- /documentation/source/reference/Core/QuantumSession.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumSession: 2 | 3 | QuantumSession 4 | ============== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumSession 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QuantumSession.__init__ 16 | QuantumSession.compile 17 | QuantumSession.statevector 18 | QuantumSession.depth 19 | QuantumSession.cnot_count -------------------------------------------------------------------------------- /documentation/source/reference/Core/QuantumVariable.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumVariable: 2 | 3 | QuantumVariable 4 | =============== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumVariable 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QuantumVariable.__init__ 16 | QuantumVariable.delete 17 | QuantumVariable.get_measurement 18 | QuantumVariable.most_likely 19 | QuantumVariable.duplicate 20 | QuantumVariable.uncompute 21 | 22 | 23 | De/Encoding states 24 | ------------------ 25 | 26 | .. autosummary:: 27 | :toctree: generated/ 28 | 29 | QuantumVariable.decoder 30 | QuantumVariable.encoder 31 | QuantumVariable.encode 32 | QuantumVariable.init_state 33 | QuantumVariable.init_from 34 | 35 | Extending/Reducing the qubit count 36 | ---------------------------------- 37 | 38 | .. autosummary:: 39 | :toctree: generated/ 40 | 41 | QuantumVariable.extend 42 | QuantumVariable.reduce 43 | 44 | Miscellaneous 45 | ------------- 46 | 47 | .. autosummary:: 48 | :toctree: generated/ 49 | 50 | QuantumVariable.app_phase_function 51 | QuantumVariable.custom 52 | 53 | 54 | -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.concatenate.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.concatenate 2 | ============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.concatenate -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.delete.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.delete 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.delete -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.duplicate.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.duplicate 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.duplicate -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.encode.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.encode 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.encode -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.flatten.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.flatten 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.flatten -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.get_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.get\_measurement 2 | =================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.get_measurement -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.most_likely.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.most\_likely 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.most_likely -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.ravel.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.ravel 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.ravel -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.reshape.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.reshape 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.reshape -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.swapaxes.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.swapaxes 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.swapaxes -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumArray.transpose.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumArray.transpose 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumArray.transpose -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumDictionary.load.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumDictionary.load 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumDictionary.load -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumSession.__init__.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumSession.\_\_init\_\_ 2 | ================================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumSession.__init__ -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumSession.cnot_count.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumSession.cnot\_count 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumSession.cnot_count -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumSession.compile.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumSession.compile 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumSession.compile -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumSession.depth.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumSession.depth 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumSession.depth -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumSession.statevector.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumSession.statevector 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumSession.statevector -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.__init__.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.\_\_init\_\_ 2 | ================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.__init__ -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.app_phase_function.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.app\_phase\_function 2 | ========================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.app_phase_function -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.custom.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.custom 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.custom -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.decoder.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.decoder 2 | ============================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.decoder -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.delete.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.delete 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.delete -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.duplicate.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.duplicate 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.duplicate -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.encode.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.encode 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.encode -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.encoder.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.encoder 2 | ============================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.encoder -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.extend.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.extend 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.extend -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.get_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.get\_measurement 2 | ====================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.get_measurement -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.init_from.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.init\_from 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.init_from -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.init_state.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.init\_state 2 | ================================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.init_state -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.most_likely.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.most\_likely 2 | ================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.most_likely -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.reduce.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.reduce 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.reduce -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/qrisp.QuantumVariable.uncompute.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumVariable.uncompute 2 | =============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumVariable.uncompute -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/statevector_print.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Core/generated/statevector_print.png -------------------------------------------------------------------------------- /documentation/source/reference/Core/generated/symbolic_statevector_print.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/Core/generated/symbolic_statevector_print.png -------------------------------------------------------------------------------- /documentation/source/reference/Examples/HelloWorld.rst: -------------------------------------------------------------------------------- 1 | .. _HelloWorld: 2 | 3 | Hello World 4 | =========== 5 | 6 | The well known "hello word" program can be coded within a few lines: 7 | 8 | >>> from qrisp import QuantumString 9 | >>> q_str = QuantumString() 10 | >>> q_str[:] = "hello world" 11 | >>> print(q_str) 12 | {'hello world': 1.0} -------------------------------------------------------------------------------- /documentation/source/reference/Examples/Loops.rst: -------------------------------------------------------------------------------- 1 | .. _Loops: 2 | 3 | Loops 4 | ===== 5 | 6 | In this example we will showcase the qRange iterator. Using this object, we can perform loops where the termination condition is based on a QuantumFloat. :: 7 | 8 | 9 | from qrisp import QuantumFloat, qRange, h 10 | 11 | n = QuantumFloat(3, signed = True, name = "n") 12 | qf = QuantumFloat(5, name = "qf") 13 | 14 | 15 | n[:] = 4 16 | 17 | h(n[0]) 18 | 19 | n_results = n.get_measurement() 20 | 21 | 22 | for i in qRange(n): 23 | qf += i 24 | 25 | 26 | 27 | According to Gauß's formula, we have 28 | 29 | .. math:: 30 | 31 | \sum_{k = 1}^n k = \frac{n (n+1)}{2} 32 | 33 | 34 | Therefore our expectation is: 35 | 36 | >>> print([n*(n+1)/2 for n in n_results.keys()]) 37 | [10.0, 15.0] 38 | 39 | Querying the simulator delivers the result: 40 | 41 | >>> print(qf) 42 | {10: 0.5, 15: 0.5} 43 | -------------------------------------------------------------------------------- /documentation/source/reference/Examples/MatrixMultiplication.rst: -------------------------------------------------------------------------------- 1 | .. _MatrixMultiplication: 2 | 3 | Matrix Multiplication 4 | ===================== 5 | 6 | In this example we will showcase how Qrisps matrix multiplication interface can be utilized. 7 | 8 | >>> import numpy as np 9 | >>> from qrisp import QuantumFloat, QuantumArray, x, h, dot 10 | 11 | Define QuantumFloat to create two QuantumArrays. Initialize the arrays and perform the multiplication with :meth:`dot `: 12 | 13 | >>> qf = QuantumFloat(3) 14 | >>> q_array_0 = QuantumArray(qtype = qf) 15 | >>> q_array_1 = QuantumArray(qtype = qf) 16 | >>> q_array_0[:] = [2,3] 17 | >>> q_array_1[:] = [[0,2],[1,0]] 18 | >>> res = dot(q_array_0, q_array_1) 19 | >>> print(res) 20 | {OutcomeArray([[3, 4]]): 1.0} 21 | -------------------------------------------------------------------------------- /documentation/source/reference/Examples/QuantumModDivision.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumModDivision: 2 | 3 | Quantum Mod Division 4 | ==================== 5 | 6 | We demonstrate the :meth:`q_divmod` function which is the quantum equivalent of modulo division with remainder. 7 | 8 | Defines the numbers to divide, encode them and perform the division. 9 | 10 | >>> from qrisp import QuantumFloat, q_divmod, multi_measurement 11 | >>> numerator = QuantumFloat(5) 12 | >>> numerator[:] = 13 13 | >>> divisor = QuantumFloat(5) 14 | >>> divisor[:] = 4 15 | >>> quotient, remainder = q_divmod(numerator, divisor) 16 | >>> print(multi_measurement([quotient, remainder])) 17 | {(3, 1.0): 1.0} 18 | 19 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Control Flow/ClControl.rst: -------------------------------------------------------------------------------- 1 | .. _ClControlEnvironment: 2 | 3 | Classical Control 4 | ================= 5 | 6 | .. currentmodule:: qrisp.environments 7 | .. autofunction:: ClControlEnvironment 8 | 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Control Flow/RUS.rst: -------------------------------------------------------------------------------- 1 | .. _RUS: 2 | 3 | Repeat-Until-Success 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: RUS 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Control Flow/index.rst: -------------------------------------------------------------------------------- 1 | .. _hb_control_flow: 2 | 3 | 4 | Hybrid Control Flow 5 | =================== 6 | 7 | Due to the Jax embedding, Jasp comes with a matured ecosystem for representing classical computations. To enable a fully hybrid software stack, we need the ability to perform quantum computations based on the results of classical conditions. For this we provide the following interfaces in particular. 8 | 9 | * :ref:`ClControlEnvironment ` 10 | * :ref:`jrange` 11 | * :ref:`prefix_control` 12 | * :ref:`RUS` 13 | 14 | 15 | .. toctree:: 16 | :maxdepth: 2 17 | :hidden: 18 | 19 | ClControl 20 | jrange 21 | Prefix Control 22 | RUS 23 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Control Flow/jrange.rst: -------------------------------------------------------------------------------- 1 | .. _jrange: 2 | 3 | Loops 4 | ===== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: jrange 8 | 9 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Optimization Tools/COBYLA.rst: -------------------------------------------------------------------------------- 1 | .. _jasp_coblya: 2 | 3 | COBYLA 4 | ====== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: cobyla -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Optimization Tools/Optimization Tools.rst: -------------------------------------------------------------------------------- 1 | .. _optimization_tools: 2 | 3 | Optimization Tools 4 | ================== 5 | 6 | .. toctree:: 7 | :hidden: 8 | 9 | COBYLA 10 | SPSA 11 | 12 | 13 | .. currentmodule:: qrisp.jasp 14 | .. autofunction:: minimize -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Optimization Tools/SPSA.rst: -------------------------------------------------------------------------------- 1 | .. _jasp_spsa: 2 | 3 | SPSA 4 | ==== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: spsa -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Quantum Kernel.rst: -------------------------------------------------------------------------------- 1 | .. _quantum_kernel: 2 | 3 | Quantum Kernels 4 | =============== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: quantum_kernel 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Resource Estimation.rst: -------------------------------------------------------------------------------- 1 | .. _count_ops: 2 | 3 | Resource Estimation 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: count_ops 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Sampling.rst: -------------------------------------------------------------------------------- 1 | .. _sample: 2 | 3 | Sampling 4 | ======== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: sample 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Simulation Tools/Boolean Simulation.rst: -------------------------------------------------------------------------------- 1 | .. _boolean_simulation: 2 | 3 | Boolean Simulation 4 | ================== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: boolean_simulation 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Simulation Tools/Jaspify.rst: -------------------------------------------------------------------------------- 1 | .. _jaspify: 2 | 3 | Jaspify 4 | ================= 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: jaspify 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Simulation Tools/QJIT.rst: -------------------------------------------------------------------------------- 1 | .. _qjit: 2 | 3 | QJIT 4 | ==== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: qjit 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Simulation Tools/Stimulation.rst: -------------------------------------------------------------------------------- 1 | .. _stimulate: 2 | 3 | Stim Simulation 4 | =============== 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: stimulate 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/Simulation Tools/Terminal Sampling.rst: -------------------------------------------------------------------------------- 1 | .. _terminal_sampling: 2 | 3 | Terminal Sampling 4 | ================= 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: terminal_sampling 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.control.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.control 2 | ======================== 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.control -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.inverse.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.inverse 2 | ======================== 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.inverse -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.qjit.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.qjit 2 | ===================== 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.qjit -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.to_catalyst_jaxpr.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.to\_catalyst\_jaxpr 2 | ==================================== 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.to_catalyst_jaxpr -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.to_mlir.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.to\_mlir 2 | ========================= 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.to_mlir -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.to_qasm.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.to\_qasm 2 | ========================= 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.to_qasm -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.to_qc.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.to\_qc 2 | ======================= 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.to_qc -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/generated/qrisp.jasp.Jaspr.to_qir.rst: -------------------------------------------------------------------------------- 1 | qrisp.jasp.Jaspr.to\_qir 2 | ======================== 3 | 4 | .. currentmodule:: qrisp.jasp 5 | 6 | .. automethod:: Jaspr.to_qir -------------------------------------------------------------------------------- /documentation/source/reference/Jasp/qache.rst: -------------------------------------------------------------------------------- 1 | .. _qache: 2 | 3 | Qaching 4 | ======= 5 | 6 | .. currentmodule:: qrisp.jasp 7 | .. autofunction:: qache 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Operators/FermionicOperator.rst: -------------------------------------------------------------------------------- 1 | .. _FermionicOperator: 2 | 3 | FermionicOperator 4 | ==================== 5 | 6 | .. currentmodule:: qrisp.operators.fermionic 7 | .. autoclass:: FermionicOperator 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | FermionicOperator.dagger 16 | FermionicOperator.expectation_value 17 | FermionicOperator.from_openfermion 18 | FermionicOperator.from_pyscf 19 | FermionicOperator.get_measurement 20 | FermionicOperator.ground_state_energy 21 | FermionicOperator.hermitize 22 | FermionicOperator.reduce 23 | FermionicOperator.to_qubit_operator 24 | FermionicOperator.trotterization -------------------------------------------------------------------------------- /documentation/source/reference/Operators/QubitOperator.rst: -------------------------------------------------------------------------------- 1 | .. _QubitOperator: 2 | 3 | QubitOperator 4 | ================ 5 | 6 | .. currentmodule:: qrisp.operators.qubit 7 | .. autoclass:: QubitOperator 8 | 9 | Methods 10 | ======= 11 | 12 | .. autosummary:: 13 | :toctree: generated/ 14 | 15 | QubitOperator.adjoint 16 | QubitOperator.commutator 17 | QubitOperator.expectation_value 18 | QubitOperator.from_matrix 19 | QubitOperator.get_measurement 20 | QubitOperator.ground_state_energy 21 | QubitOperator.hermitize 22 | QubitOperator.to_array 23 | QubitOperator.to_sparse_matrix 24 | QubitOperator.to_pauli 25 | QubitOperator.trotterization 26 | QubitOperator.unitaries 27 | -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.dagger.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.dagger 2 | ================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.dagger -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.expectation_value.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.expectation\_value 2 | ============================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.expectation_value -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.from_openfermion.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.from\_openfermion 2 | ============================================================= 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.from_openfermion -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.from_pyscf.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.from\_pyscf 2 | ======================================================= 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.from_pyscf -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.get_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.get\_measurement 2 | ============================================================ 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.get_measurement -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.ground_state_energy.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.ground\_state\_energy 2 | ================================================================= 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.ground_state_energy -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.hermitize.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.hermitize 2 | ===================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.hermitize -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.reduce.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.reduce 2 | ================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.reduce -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.to_qubit_operator.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.to\_qubit\_operator 2 | =============================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.to_qubit_operator -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.fermionic.FermionicOperator.trotterization.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.fermionic.FermionicOperator.trotterization 2 | ========================================================== 3 | 4 | .. currentmodule:: qrisp.operators.fermionic 5 | 6 | .. automethod:: FermionicOperator.trotterization -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.adjoint.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.adjoint 2 | =========================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.adjoint -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.commutator.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.commutator 2 | ============================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.commutator -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.expectation_value.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.expectation\_value 2 | ====================================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.expectation_value -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.from_matrix.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.from\_matrix 2 | ================================================ 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.from_matrix -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.get_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.get\_measurement 2 | ==================================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.get_measurement -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.ground_state_energy.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.ground\_state\_energy 2 | ========================================================= 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.ground_state_energy -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.hermitize.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.hermitize 2 | ============================================= 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.hermitize -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.to_array.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.to\_array 2 | ============================================= 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.to_array -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.to_pauli.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.to\_pauli 2 | ============================================= 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.to_pauli -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.to_sparse_matrix.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.to\_sparse\_matrix 2 | ====================================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.to_sparse_matrix -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.trotterization.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.trotterization 2 | ================================================== 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.trotterization -------------------------------------------------------------------------------- /documentation/source/reference/Operators/generated/qrisp.operators.qubit.QubitOperator.unitaries.rst: -------------------------------------------------------------------------------- 1 | qrisp.operators.qubit.QubitOperator.unitaries 2 | ============================================= 3 | 4 | .. currentmodule:: qrisp.operators.qubit 5 | 6 | .. automethod:: QubitOperator.unitaries -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/DickeStates.rst: -------------------------------------------------------------------------------- 1 | .. _DickeStates: 2 | 3 | Dicke State Preparation 4 | ======================= 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: dicke_state 9 | 10 | .. autofunction:: split_cycle_shift -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/Gate functions.rst: -------------------------------------------------------------------------------- 1 | .. _gate_application_functions: 2 | 3 | Gate Functions 4 | ============== 5 | 6 | These functions facilitate the application of (elementary) quantum gates. Note that these functions only work for Qubits registered in QuantumSessions and not for QuantumCircuits. 7 | 8 | .. currentmodule:: qrisp 9 | 10 | .. autosummary:: 11 | :toctree: generated/ 12 | 13 | measure 14 | x 15 | y 16 | z 17 | h 18 | cx 19 | cy 20 | cz 21 | p 22 | cp 23 | rx 24 | ry 25 | rz 26 | mcx 27 | mcz 28 | mcp 29 | crz 30 | s 31 | s_dg 32 | t 33 | t_dg 34 | sx 35 | sx_dg 36 | swap 37 | rxx 38 | rzz 39 | xxyy 40 | u3 41 | barrier 42 | gphase 43 | id -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/Grover tools.rst: -------------------------------------------------------------------------------- 1 | .. _grover_tools: 2 | 3 | Grover Tools 4 | ============ 5 | 6 | These functions facilitate convenient construction and evaluation of Grover oracles. 7 | 8 | .. currentmodule:: qrisp 9 | 10 | .. autosummary:: 11 | :toctree: generated/ 12 | 13 | grover.diffuser 14 | grover.tag_state -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/IQAE.rst: -------------------------------------------------------------------------------- 1 | .. _IQAE: 2 | 3 | Iterative Quantum Amplitude Estimation 4 | ====================================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: IQAE 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/IQPE.rst: -------------------------------------------------------------------------------- 1 | .. _IQPE: 2 | 3 | Iterative Quantum Phase Estimation 4 | ====================================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: IQPE 9 | 10 | -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/Prefix arithmetic.rst: -------------------------------------------------------------------------------- 1 | .. _prefix_arithmetic: 2 | 3 | Prefix Arithmetic 4 | ================= 5 | 6 | While syntactically more compact/elegant, infix arithmetic expressions allow barely any customization regarding precision, method etc. which can be detrimental when efficiency is a concern. Because of this we expose the underlying prefix arithmetic functions: 7 | 8 | .. currentmodule:: qrisp 9 | 10 | In-place adders 11 | --------------- 12 | 13 | .. autosummary:: 14 | :toctree: generated/ 15 | 16 | fourier_adder 17 | cuccaro_adder 18 | gidney_adder 19 | remaud_adder 20 | qcla 21 | 22 | QuantumFloat processing 23 | ----------------------- 24 | 25 | .. autosummary:: 26 | :toctree: generated/ 27 | 28 | sbp_mult 29 | sbp_add 30 | sbp_sub 31 | hybrid_mult 32 | inpl_add 33 | inpl_mult 34 | q_divmod 35 | q_div 36 | qf_inversion 37 | q_isqrt 38 | 39 | QuantumArray processing 40 | ----------------------- 41 | 42 | .. autosummary:: 43 | :toctree: generated/ 44 | 45 | q_matmul 46 | semi_classic_matmul 47 | inplace_matrix_app 48 | dot 49 | tensordot -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/QAE.rst: -------------------------------------------------------------------------------- 1 | .. _QAE: 2 | 3 | Quantum Amplitude Estimation 4 | ============================ 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: QAE -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/QFT.rst: -------------------------------------------------------------------------------- 1 | .. _QFT: 2 | 3 | Quantum Fourier Transformation 4 | ============================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: QFT -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/QPE.rst: -------------------------------------------------------------------------------- 1 | .. _QPE: 2 | 3 | Quantum Phase Estimation 4 | ======================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: QPE -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/amplitude_amplification.rst: -------------------------------------------------------------------------------- 1 | .. _AA: 2 | 3 | Quantum Amplitude Amplification 4 | =============================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: amplitude_amplification -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/cyclic_shift.rst: -------------------------------------------------------------------------------- 1 | .. _ItShifting: 2 | 3 | Iterable Shifting 4 | ================= 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: cyclic_shift -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/demux.rst: -------------------------------------------------------------------------------- 1 | .. _ItDemuxing: 2 | 3 | Iterable Demuxing 4 | ================= 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: demux -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.LCU.rst: -------------------------------------------------------------------------------- 1 | qrisp.LCU 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: LCU -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.app_phase_polynomial.rst: -------------------------------------------------------------------------------- 1 | qrisp.app\_phase\_polynomial 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: app_phase_polynomial -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.app_sb_phase_polynomial.rst: -------------------------------------------------------------------------------- 1 | qrisp.app\_sb\_phase\_polynomial 2 | ================================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: app_sb_phase_polynomial -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.barrier.rst: -------------------------------------------------------------------------------- 1 | qrisp.barrier 2 | ============= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: barrier -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.cp.rst: -------------------------------------------------------------------------------- 1 | qrisp.cp 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cp -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.crz.rst: -------------------------------------------------------------------------------- 1 | qrisp.crz 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: crz -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.cuccaro_adder.rst: -------------------------------------------------------------------------------- 1 | qrisp.cuccaro\_adder 2 | ==================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cuccaro_adder -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.cx.rst: -------------------------------------------------------------------------------- 1 | qrisp.cx 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cx -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.cy.rst: -------------------------------------------------------------------------------- 1 | qrisp.cy 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cy -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.cz.rst: -------------------------------------------------------------------------------- 1 | qrisp.cz 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cz -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.dot.rst: -------------------------------------------------------------------------------- 1 | qrisp.dot 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: dot -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.fourier_adder.rst: -------------------------------------------------------------------------------- 1 | qrisp.fourier\_adder 2 | ==================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: fourier_adder -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.gidney_adder.rst: -------------------------------------------------------------------------------- 1 | qrisp.gidney\_adder 2 | =================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: gidney_adder -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.gphase.rst: -------------------------------------------------------------------------------- 1 | qrisp.gphase 2 | ============ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: gphase -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.grover.diffuser.rst: -------------------------------------------------------------------------------- 1 | qrisp.grover.diffuser 2 | ===================== 3 | 4 | .. currentmodule:: qrisp.grover 5 | 6 | .. autofunction:: diffuser -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.grover.tag_state.rst: -------------------------------------------------------------------------------- 1 | qrisp.grover.tag\_state 2 | ======================= 3 | 4 | .. currentmodule:: qrisp.grover 5 | 6 | .. autofunction:: tag_state -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.h.rst: -------------------------------------------------------------------------------- 1 | qrisp.h 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: h -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.hybrid_mult.rst: -------------------------------------------------------------------------------- 1 | qrisp.hybrid\_mult 2 | ================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: hybrid_mult -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.id.rst: -------------------------------------------------------------------------------- 1 | qrisp.id 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: id -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.inner_LCU.rst: -------------------------------------------------------------------------------- 1 | qrisp.inner\_LCU 2 | ================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: inner_LCU -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.inpl_add.rst: -------------------------------------------------------------------------------- 1 | qrisp.inpl\_add 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: inpl_add -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.inpl_mult.rst: -------------------------------------------------------------------------------- 1 | qrisp.inpl\_mult 2 | ================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: inpl_mult -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.inplace_matrix_app.rst: -------------------------------------------------------------------------------- 1 | qrisp.inplace\_matrix\_app 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: inplace_matrix_app -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.mcp.rst: -------------------------------------------------------------------------------- 1 | qrisp.mcp 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: mcp -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.mcx.rst: -------------------------------------------------------------------------------- 1 | qrisp.mcx 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: mcx -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.mcz.rst: -------------------------------------------------------------------------------- 1 | qrisp.mcz 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: mcz -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.measure.rst: -------------------------------------------------------------------------------- 1 | qrisp.measure 2 | ============= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: measure -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.p.rst: -------------------------------------------------------------------------------- 1 | qrisp.p 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: p -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.q_div.rst: -------------------------------------------------------------------------------- 1 | qrisp.q\_div 2 | ============ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: q_div -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.q_divmod.rst: -------------------------------------------------------------------------------- 1 | qrisp.q\_divmod 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: q_divmod -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.q_isqrt.rst: -------------------------------------------------------------------------------- 1 | qrisp.q\_isqrt 2 | ============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: q_isqrt -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.q_matmul.rst: -------------------------------------------------------------------------------- 1 | qrisp.q\_matmul 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: q_matmul -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.qcla.rst: -------------------------------------------------------------------------------- 1 | qrisp.qcla 2 | ========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: qcla -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.qf_inversion.rst: -------------------------------------------------------------------------------- 1 | qrisp.qf\_inversion 2 | =================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: qf_inversion -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.remaud_adder.rst: -------------------------------------------------------------------------------- 1 | qrisp.remaud\_adder 2 | =================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: remaud_adder -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.rx.rst: -------------------------------------------------------------------------------- 1 | qrisp.rx 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: rx -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.rxx.rst: -------------------------------------------------------------------------------- 1 | qrisp.rxx 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: rxx -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.ry.rst: -------------------------------------------------------------------------------- 1 | qrisp.ry 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: ry -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.rz.rst: -------------------------------------------------------------------------------- 1 | qrisp.rz 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: rz -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.rzz.rst: -------------------------------------------------------------------------------- 1 | qrisp.rzz 2 | ========= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: rzz -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.s.rst: -------------------------------------------------------------------------------- 1 | qrisp.s 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: s -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.s_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.s\_dg 2 | =========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: s_dg -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.sbp_add.rst: -------------------------------------------------------------------------------- 1 | qrisp.sbp\_add 2 | ============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: sbp_add -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.sbp_mult.rst: -------------------------------------------------------------------------------- 1 | qrisp.sbp\_mult 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: sbp_mult -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.sbp_sub.rst: -------------------------------------------------------------------------------- 1 | qrisp.sbp\_sub 2 | ============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: sbp_sub -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.semi_classic_matmul.rst: -------------------------------------------------------------------------------- 1 | qrisp.semi\_classic\_matmul 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: semi_classic_matmul -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.swap.rst: -------------------------------------------------------------------------------- 1 | qrisp.swap 2 | ========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: swap -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.sx.rst: -------------------------------------------------------------------------------- 1 | qrisp.sx 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: sx -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.sx_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.sx\_dg 2 | ============ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: sx_dg -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.t.rst: -------------------------------------------------------------------------------- 1 | qrisp.t 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: t -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.t_dg.rst: -------------------------------------------------------------------------------- 1 | qrisp.t\_dg 2 | =========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: t_dg -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.tensordot.rst: -------------------------------------------------------------------------------- 1 | qrisp.tensordot 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: tensordot -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.u3.rst: -------------------------------------------------------------------------------- 1 | qrisp.u3 2 | ======== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: u3 -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.view_LCU.rst: -------------------------------------------------------------------------------- 1 | qrisp.view\_LCU 2 | =============== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: view_LCU -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.x.rst: -------------------------------------------------------------------------------- 1 | qrisp.x 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: x -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.xxyy.rst: -------------------------------------------------------------------------------- 1 | qrisp.xxyy 2 | ========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: xxyy -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.y.rst: -------------------------------------------------------------------------------- 1 | qrisp.y 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: y -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/generated/qrisp.z.rst: -------------------------------------------------------------------------------- 1 | qrisp.z 2 | ======= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: z -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/iterable_permutation.rst: -------------------------------------------------------------------------------- 1 | .. _ItPermutation: 2 | 3 | Iterable Permutation 4 | ==================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: permute_iterable -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/prepare.rst: -------------------------------------------------------------------------------- 1 | .. _prepare: 2 | 3 | Quantum State Preparation 4 | ========================= 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: prepare -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/qswitch.rst: -------------------------------------------------------------------------------- 1 | .. _qswitch: 2 | 3 | Quantum Switch Case 4 | =================== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: qswitch -------------------------------------------------------------------------------- /documentation/source/reference/Primitives/reflection.rst: -------------------------------------------------------------------------------- 1 | .. _reflection: 2 | 3 | Reflection 4 | ========== 5 | 6 | .. currentmodule:: qrisp 7 | 8 | .. autofunction:: reflection -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/ConditionEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _ConditionEnvironment: 2 | 3 | ConditionEnvironment 4 | ==================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: ConditionEnvironment -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/ConjugationEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _ConjugationEnvironment: 2 | 3 | ConjugationEnvironment 4 | ====================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: ConjugationEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/ControlEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _ControlEnvironment: 2 | 3 | ControlEnvironment 4 | ================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: ControlEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/GMSEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _GMSEnvironment: 2 | 3 | GMSEnvironment 4 | ============== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: GMSEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/GateWrapEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _GateWrapEnvironment: 2 | 3 | GateWrapEnvironment 4 | =================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: GateWrapEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/InversionEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _InversionEnvironment: 2 | 3 | InversionEnvironment 4 | ==================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: InversionEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/IterationEnvironment.rst: -------------------------------------------------------------------------------- 1 | .. _IterationEnvironment: 2 | 3 | IterationEnvironment 4 | ==================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: IterationEnvironment 8 | -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Environments/index.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumEnvironment: 2 | 3 | Quantum Environments 4 | ==================== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumEnvironment 8 | 9 | 10 | .. toctree:: 11 | :maxdepth: 2 12 | :hidden: 13 | 14 | ConditionEnvironment 15 | ControlEnvironment 16 | InversionEnvironment 17 | ConjugationEnvironment 18 | GateWrapEnvironment 19 | IterationEnvironment 20 | GMSEnvironment -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/QuantumBool.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumBool: 2 | 3 | QuantumBool 4 | =========== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumBool 8 | 9 | 10 | Methods 11 | ======= 12 | 13 | .. autosummary:: 14 | :toctree: generated/ 15 | 16 | QuantumBool.flip -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/QuantumChar.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumChar: 2 | 3 | QuantumChar 4 | =========== 5 | 6 | 7 | .. currentmodule:: qrisp 8 | .. autoclass:: QuantumChar -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/QuantumFloat.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumFloat: 2 | 3 | QuantumFloat 4 | ============ 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumFloat 8 | 9 | Methods 10 | ======= 11 | 12 | As an inheritor, addtionally to the methods listed here, QuantumFloats support all methods of :ref:`QuantumVariable`. 13 | 14 | .. autosummary:: 15 | :toctree: generated/ 16 | 17 | QuantumFloat.exp_shift 18 | QuantumFloat.quantum_bit_shift 19 | QuantumFloat.significant 20 | QuantumFloat.sign 21 | QuantumFloat.add_sign 22 | QuantumFloat.truncate 23 | QuantumFloat.sb_poly 24 | QuantumFloat.get_ev -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/QuantumModulus.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumModulus: 2 | 3 | QuantumModulus 4 | ============== 5 | 6 | .. currentmodule:: qrisp 7 | .. autoclass:: QuantumModulus -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/QuantumString.rst: -------------------------------------------------------------------------------- 1 | .. _QuantumString: 2 | 3 | QuantumString 4 | ============= 5 | 6 | 7 | .. currentmodule:: qrisp 8 | .. autoclass:: QuantumString -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumBool.flip.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumBool.flip 2 | ====================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumBool.flip -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.add_sign.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.add\_sign 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.add_sign -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.exp_shift.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.exp\_shift 2 | ============================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.exp_shift -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.get_ev.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.get\_ev 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.get_ev -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.quantum_bit_shift.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.quantum\_bit\_shift 2 | ====================================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.quantum_bit_shift -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.sb_poly.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.sb\_poly 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.sb_poly -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.sign.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.sign 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.sign -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.significant.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.significant 2 | ============================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.significant -------------------------------------------------------------------------------- /documentation/source/reference/Quantum Types/generated/qrisp.QuantumFloat.truncate.rst: -------------------------------------------------------------------------------- 1 | qrisp.QuantumFloat.truncate 2 | =========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. automethod:: QuantumFloat.truncate -------------------------------------------------------------------------------- /documentation/source/reference/Utilities.rst: -------------------------------------------------------------------------------- 1 | Utilities 2 | ========= 3 | 4 | 5 | .. currentmodule:: qrisp 6 | 7 | .. autosummary:: 8 | :toctree: generated/ 9 | 10 | multi_measurement 11 | batched_measurement 12 | gate_wrap 13 | custom_control 14 | lifted 15 | redirect_qfunction 16 | as_hamiltonian 17 | lock 18 | unlock 19 | perm_lock 20 | perm_unlock 21 | t_depth_indicator 22 | cnot_depth_indicator 23 | inpl_adder_test 24 | -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.as_hamiltonian.rst: -------------------------------------------------------------------------------- 1 | qrisp.as\_hamiltonian 2 | ===================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: as_hamiltonian -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.batched_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.batched\_measurement 2 | ========================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: batched_measurement -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.cnot_depth_indicator.rst: -------------------------------------------------------------------------------- 1 | qrisp.cnot\_depth\_indicator 2 | ============================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: cnot_depth_indicator -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.custom_control.rst: -------------------------------------------------------------------------------- 1 | qrisp.custom\_control 2 | ===================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: custom_control -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.gate_wrap.rst: -------------------------------------------------------------------------------- 1 | qrisp.gate\_wrap 2 | ================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: gate_wrap -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.inpl_adder_test.rst: -------------------------------------------------------------------------------- 1 | qrisp.inpl\_adder\_test 2 | ======================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: inpl_adder_test -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.lifted.rst: -------------------------------------------------------------------------------- 1 | qrisp.lifted 2 | ============ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: lifted -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.lock.rst: -------------------------------------------------------------------------------- 1 | qrisp.lock 2 | ========== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: lock -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.multi_measurement.rst: -------------------------------------------------------------------------------- 1 | qrisp.multi\_measurement 2 | ======================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: multi_measurement -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.perm_lock.rst: -------------------------------------------------------------------------------- 1 | qrisp.perm\_lock 2 | ================ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: perm_lock -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.perm_unlock.rst: -------------------------------------------------------------------------------- 1 | qrisp.perm\_unlock 2 | ================== 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: perm_unlock -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.redirect_qfunction.rst: -------------------------------------------------------------------------------- 1 | qrisp.redirect\_qfunction 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: redirect_qfunction -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.t_depth_indicator.rst: -------------------------------------------------------------------------------- 1 | qrisp.t\_depth\_indicator 2 | ========================= 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: t_depth_indicator -------------------------------------------------------------------------------- /documentation/source/reference/generated/qrisp.unlock.rst: -------------------------------------------------------------------------------- 1 | qrisp.unlock 2 | ============ 3 | 4 | .. currentmodule:: qrisp 5 | 6 | .. autofunction:: unlock -------------------------------------------------------------------------------- /documentation/source/reference/structure_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/structure_overview.png -------------------------------------------------------------------------------- /documentation/source/reference/structure_overview.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/documentation/source/reference/structure_overview.pptx -------------------------------------------------------------------------------- /logo/gimp_file.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/gimp_file.xcf -------------------------------------------------------------------------------- /logo/gimp_file_contur.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/gimp_file_contur.xcf -------------------------------------------------------------------------------- /logo/logo_extended.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/logo_extended.png -------------------------------------------------------------------------------- /logo/logo_with_contour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/logo_with_contour.png -------------------------------------------------------------------------------- /logo/qrisp_favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/qrisp_favicon.png -------------------------------------------------------------------------------- /logo/qrisp_favicon.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/qrisp_favicon.xcf -------------------------------------------------------------------------------- /logo/qrisp_logo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/qrisp_logo.pdf -------------------------------------------------------------------------------- /logo/qrisp_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/qrisp_logo.png -------------------------------------------------------------------------------- /logo/qrisp_logo_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/logo/qrisp_logo_small.png -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = [ 3 | "setuptools>=42", 4 | "wheel" 5 | ] 6 | build-backend = "setuptools.build_meta" 7 | 8 | [tool.isort] 9 | profile = "black" 10 | 11 | [tool.pylint. messages_control] 12 | disable = ["import-error"] -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [metadata] 2 | name = qrisp 3 | version = 0.7.10 4 | author = The Qrisp authors 5 | author_email = raphael.seidel@meetiqm.com 6 | description = A high-level quantum programming language 7 | long_description = file: README.md 8 | long_description_content_type = text/markdown 9 | url = https://github.com/fraunhoferfokus/Qrisp 10 | project_urls = 11 | Bug Tracker = https://github.com/fraunhoferfokus/Qrisp/issues 12 | 13 | [options] 14 | package_dir = 15 | =src 16 | packages = find: 17 | python_requires = >=3.8 18 | 19 | [options.packages.find] 20 | where = src 21 | 22 | [options.extras_require] 23 | iqm = qiskit-iqm 24 | 25 | [tool:pytest] 26 | testpaths = ./tests 27 | pythonpath = . 28 | -------------------------------------------------------------------------------- /src/qrisp/.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/arithmetic/adders/gidney/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.arithmetic.adders.gidney.gidney_adder import * 20 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/arithmetic/adders/qcla/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.arithmetic.adders.qcla.quantum_quantum import * 20 | from qrisp.alg_primitives.arithmetic.adders.qcla.classical_quantum import * 21 | 22 | from qrisp.alg_primitives.arithmetic.adders.qcla.wrapper_function import qcla 23 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/arithmetic/adders/qcla/classical_quantum/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.arithmetic.adders.qcla.classical_quantum.cq_carry_path import * 20 | from qrisp.alg_primitives.arithmetic.adders.qcla.classical_quantum.cq_sum_path import * 21 | from qrisp.alg_primitives.arithmetic.adders.qcla.classical_quantum.cq_qcla_adder import * 22 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/arithmetic/adders/qcla/quantum_quantum/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.arithmetic.adders.qcla.quantum_quantum.qq_carry_path import * 20 | from qrisp.alg_primitives.arithmetic.adders.qcla.quantum_quantum.qq_sum_path import * 21 | from qrisp.alg_primitives.arithmetic.adders.qcla.quantum_quantum.qq_qcla_adder import * 22 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/arithmetic/isqrt/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.arithmetic.isqrt.isqrt_algorithm import * -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/logic_synthesis/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.alg_primitives.logic_synthesis.truth_tables import * 20 | from qrisp.alg_primitives.logic_synthesis.gray_synthesis import * 21 | from qrisp.alg_primitives.logic_synthesis.pprm_synthesis import * 22 | -------------------------------------------------------------------------------- /src/qrisp/alg_primitives/mcx_algs/multi_cx.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/grover/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.grover.grover_tools import * 20 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/qaoa/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.qaoa.qaoa_problem import * 20 | from qrisp.algorithms.qaoa.qaoa_benchmark_data import * 21 | from qrisp.algorithms.qaoa.mixers import * 22 | from qrisp.algorithms.qaoa.problems import * 23 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/qiro/qiroproblems/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.qiro.qiroproblems.qiroMaxClique import * 20 | from qrisp.algorithms.qiro.qiroproblems.qiroMaxIndepSet import * 21 | from qrisp.algorithms.qiro.qiroproblems.qiroMaxSat import * 22 | from qrisp.algorithms.qiro.qiroproblems.qiroMaxSetPack import * 23 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/quantum_backtracking/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # -*- coding: utf-8 -*- 20 | 21 | from qrisp.algorithms.quantum_backtracking.backtracking_tree import * 22 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/shor/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.shor.shors_algorithm import * 20 | from qrisp.algorithms.shor.crypto_tools import * 21 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/vqe/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.vqe.vqe_problem import * 20 | from qrisp.algorithms.vqe.vqe_benchmark_data import * 21 | from qrisp.algorithms.vqe.problems import * 22 | -------------------------------------------------------------------------------- /src/qrisp/algorithms/vqe/problems/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.algorithms.vqe.problems.electronic_structure import * 20 | from qrisp.algorithms.vqe.problems.heisenberg import * 21 | -------------------------------------------------------------------------------- /src/qrisp/circuit/library.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # This file is for qiskit compatibility 20 | 21 | from qrisp.circuit.standard_operations import * 22 | -------------------------------------------------------------------------------- /src/qrisp/default_backend.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.interface import VirtualBackend, QiskitBackend 20 | from qrisp.simulator.simulator import run 21 | from qrisp import QuantumCircuit 22 | 23 | 24 | class DefaultBackend: 25 | def run(self, qc, shots=None, token=""): 26 | return run(qc, shots, token) 27 | 28 | 29 | def_backend = DefaultBackend() 30 | -------------------------------------------------------------------------------- /src/qrisp/examples/hello_world.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp import QuantumString 20 | 21 | q_str = QuantumString() 22 | q_str[:] = "hello world" 23 | 24 | print(q_str) 25 | -------------------------------------------------------------------------------- /src/qrisp/interface/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.interface.qunicorn import * 20 | from qrisp.interface.virtual_backend import * 21 | from qrisp.interface.batched_backend import * 22 | from qrisp.interface.converter import * 23 | from qrisp.interface.docker_backends import * 24 | from qrisp.interface.provider_backends import * 25 | 26 | -------------------------------------------------------------------------------- /src/qrisp/interface/converter/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.interface.converter.qiskit_converter import * 20 | from qrisp.interface.converter.pytket_converter import * 21 | from qrisp.interface.converter.pennylane_converter import * 22 | from qrisp.interface.converter.qulacs_converter import * 23 | -------------------------------------------------------------------------------- /src/qrisp/interface/provider_backends/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.interface.provider_backends.iqm_backend import * 20 | from qrisp.interface.provider_backends.qiskit_backend import * 21 | from qrisp.interface.provider_backends.aqt_backend import * 22 | -------------------------------------------------------------------------------- /src/qrisp/interface/qunicorn/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.interface.qunicorn.backend_client import BackendClient 20 | from qrisp.interface.qunicorn.backend_server import BackendServer 21 | -------------------------------------------------------------------------------- /src/qrisp/jasp/evaluation_tools/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.evaluation_tools.boolean_simulation import * 20 | from qrisp.jasp.evaluation_tools.terminal_sampling import * 21 | from qrisp.jasp.evaluation_tools.jaspification import * 22 | from qrisp.jasp.evaluation_tools.catalyst_qjit import * 23 | from qrisp.jasp.evaluation_tools.profiler import * 24 | -------------------------------------------------------------------------------- /src/qrisp/jasp/interpreter_tools/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.interpreter_tools.dynamic_list import * 20 | from qrisp.jasp.interpreter_tools.abstract_interpreter import * 21 | from qrisp.jasp.interpreter_tools.interpreters import * 22 | -------------------------------------------------------------------------------- /src/qrisp/jasp/jasp_expression/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.jasp_expression.inv_transform import * 20 | from qrisp.jasp.jasp_expression.environment_collection import * 21 | from qrisp.jasp.jasp_expression.centerclass import * 22 | from qrisp.jasp.jasp_expression.control_transform import * 23 | from qrisp.jasp.jasp_expression.injection_transform import * 24 | -------------------------------------------------------------------------------- /src/qrisp/jasp/optimization_tools/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.optimization_tools.optimize import * 20 | from qrisp.jasp.optimization_tools.spsa import * 21 | from qrisp.jasp.optimization_tools.cobyla import * 22 | -------------------------------------------------------------------------------- /src/qrisp/jasp/primitives/quantum_primitive.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from jax.extend.core import Primitive 20 | 21 | 22 | # Wrapper to identify Qrisp primitives 23 | class QuantumPrimitive(Primitive): 24 | def __init__(self, name): 25 | Primitive.__init__(self, "jasp." + name) 26 | self.qrisp_name = name 27 | -------------------------------------------------------------------------------- /src/qrisp/jasp/program_control/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.program_control.jrange_iterator import * 20 | from qrisp.jasp.program_control.rus import * 21 | from qrisp.jasp.program_control.sampling import * 22 | from qrisp.jasp.program_control.ev import * 23 | from qrisp.jasp.program_control.prefix_control import * 24 | -------------------------------------------------------------------------------- /src/qrisp/jasp/tracing_logic/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.jasp.tracing_logic.dynamic_qubit_array import * 20 | from qrisp.jasp.tracing_logic.tracing_quantum_session import * 21 | from qrisp.jasp.tracing_logic.qaching import * 22 | from qrisp.jasp.tracing_logic.quantum_kernel import * 23 | from qrisp.jasp.tracing_logic.qv_flattening import * 24 | -------------------------------------------------------------------------------- /src/qrisp/misc/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.misc.utility import * 20 | from qrisp.misc.qrange import * 21 | -------------------------------------------------------------------------------- /src/qrisp/operators/fermionic/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2024 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # -*- coding: utf-8 -*- 20 | from qrisp.operators.fermionic.trotterization import * 21 | from qrisp.operators.fermionic.fermionic_operator import * 22 | from qrisp.operators.fermionic.fermionic import * 23 | -------------------------------------------------------------------------------- /src/qrisp/operators/qubit/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2024 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # -*- coding: utf-8 -*- 20 | from qrisp.operators.qubit.qubit_operator import * 21 | from qrisp.operators.qubit.operator_factors import * 22 | -------------------------------------------------------------------------------- /src/qrisp/operators/test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eclipse-qrisp/Qrisp/ba79198893eef50014b2e9fdd0fb3b25b23357ae/src/qrisp/operators/test.py -------------------------------------------------------------------------------- /src/qrisp/permeability/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.permeability.uncomputation import * 20 | from qrisp.permeability.type_checker import * 21 | from qrisp.permeability.permeability_dag import * 22 | from qrisp.permeability.qc_transformations import * 23 | -------------------------------------------------------------------------------- /src/qrisp/permeability/qc_transformations/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | from qrisp.permeability.qc_transformations.light_cone_reduction import * 20 | from qrisp.permeability.qc_transformations.memory_management import * 21 | from qrisp.permeability.qc_transformations.qc_parallelization import * 22 | from qrisp.permeability.qc_transformations.unqomp import * 23 | -------------------------------------------------------------------------------- /src/qrisp/qtypes/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # -*- coding: utf-8 -*- 20 | 21 | from qrisp.qtypes.quantum_bool import * 22 | from qrisp.qtypes.quantum_char import * 23 | from qrisp.qtypes.quantum_string import * 24 | from qrisp.qtypes.quantum_float import * 25 | from qrisp.qtypes.quantum_modulus import * 26 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # Created by ann81984 at 22.07.2022 20 | -------------------------------------------------------------------------------- /tests/algorithms_tests/test_QMCI.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2024 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | 20 | def test_QMCI(): 21 | from qrisp import QuantumFloat 22 | from qrisp.algorithms.qmci import QMCI 23 | import numpy as np 24 | 25 | def f(qf): 26 | return qf*qf 27 | 28 | qf_x = QuantumFloat(3,-3) 29 | qf_y = QuantumFloat(6,-6) 30 | a = QMCI([qf_x,qf_y], f) 31 | 32 | assert np.abs(a-0.2734375)<0.01 -------------------------------------------------------------------------------- /tests/algorithms_tests/test_quantum_counting.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | def test_quantum_counting(): 20 | from qrisp import quantum_counting, z, QuantumVariable 21 | import numpy as np 22 | 23 | def oracle(qv): 24 | z(qv[-1]) 25 | 26 | res = quantum_counting(QuantumVariable(3), oracle, 3) 27 | 28 | assert np.abs(res-4) < 1e-4 -------------------------------------------------------------------------------- /tests/core_tests/test_hello_world.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | # Created by ann81984 at 06.05.2022 20 | # import pytest 21 | 22 | from qrisp import QuantumString 23 | 24 | 25 | def test_hello_world(): 26 | q_str = QuantumString(size=len("hello world")) 27 | q_str.encode("hello world") 28 | 29 | assert list(q_str.get_measurement().keys())[0] == "hello world" 30 | -------------------------------------------------------------------------------- /tests/core_tests/test_measurement_reduction.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | 20 | from qrisp import QuantumFloat, h 21 | 22 | 23 | def test_measurement_reduction(): 24 | qf = QuantumFloat(4) 25 | h(qf) 26 | qbls = [] 27 | for i in range(100): 28 | qbls.append(qf == 2) 29 | 30 | assert qbls[50].get_measurement() == {False: 0.9375, True: 0.0625} 31 | -------------------------------------------------------------------------------- /tests/core_tests/test_outcome_array.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | 20 | def outome_array_hashing_test(): 21 | from qrisp import OutcomeArray 22 | import numpy as np 23 | 24 | test = OutcomeArray(np.eye(3)) 25 | 26 | test_dic = {test: 1} 27 | 28 | test_dic[str(np.eye(3))] 29 | 30 | assert str(np.eye(3)) == str(test) 31 | -------------------------------------------------------------------------------- /tests/primitives_tests/arithmetic_tests/test_fourier_adder.py: -------------------------------------------------------------------------------- 1 | """ 2 | ******************************************************************************** 3 | * Copyright (c) 2025 the Qrisp authors 4 | * 5 | * This program and the accompanying materials are made available under the 6 | * terms of the Eclipse Public License 2.0 which is available at 7 | * http://www.eclipse.org/legal/epl-2.0. 8 | * 9 | * This Source Code may also be made available under the following Secondary 10 | * Licenses when the conditions for such availability set forth in the Eclipse 11 | * Public License, v. 2.0 are satisfied: GNU General Public License, version 2 12 | * with the GNU Classpath Exception which is 13 | * available at https://www.gnu.org/software/classpath/license.html. 14 | * 15 | * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 16 | ******************************************************************************** 17 | """ 18 | 19 | 20 | import numpy as np 21 | from qrisp import inpl_adder_test, fourier_adder 22 | 23 | def test_fourier_adder(): 24 | 25 | inpl_adder_test(fourier_adder) 26 | --------------------------------------------------------------------------------