Introduction#
MIMIQ Circuits is a quantum computing framework and high performance simulator developed by QPerfect. It allows you to develop and run your quantum algorithms beyond the limits of today’s noisy intermediate scale quantum (NISQ) computers.
Quick Start#
mimiqcircuits.pyis a Python Language package containing all the utilities and programming interfaces (APIs)to build quantum systems, connect, and execute simulations on QPerfect’s MIMIQ-CIRC large-scale quantum circuit simulator.
To install mimiqcircuits.py you can use the following command:
pip install "mimiqcircuits @ git+https://github.com/qperfect-io/mimiqcircuits-python.git"
For more details on installation, please refer to the installation page.
Indices and tables#
Contents#
- MIMIQ Documentation
- Quick Start
- Contents
- Manual
- Installation
- Contents
- Overview
- Circuits
- Contents
- Unitary Gates
- Contents
- Non-unitary Operations
- Contents
- Noisy simulations on MIMIQ
- Contents
- Symbolic Operations in MIMIQ
- contents
- Statistical Operations
- Contents
- Special Operations
- Contents
- Simulating Circuits
- Contents
- Execution on MIMIQ
- contents
- Import and export circuits
- Contents
- Special Topics
- Contents
- Z-register Operations
- Hamiltonians and Time Evolution
- Contents
- API References
AbstractAnnotationAbstractMeasurementAbstractOperatorAddAmplitudeAmplitudeDampingAsciiCanvasAsciiCanvas.draw_box()AsciiCanvas.draw_double_hline()AsciiCanvas.draw_double_vline()AsciiCanvas.draw_empty()AsciiCanvas.draw_fill()AsciiCanvas.draw_hline()AsciiCanvas.draw_text()AsciiCanvas.draw_vline()AsciiCanvas.draw_vtext()AsciiCanvas.get_cols()AsciiCanvas.get_rows()AsciiCanvas.push_line()AsciiCanvas.reset()
AsciiCircuitAsciiCircuit.draw_barrier()AsciiCircuit.draw_control()AsciiCircuit.draw_ifstatement()AsciiCircuit.draw_instruction()AsciiCircuit.draw_operation()AsciiCircuit.draw_parallel()AsciiCircuit.draw_paulistring()AsciiCircuit.draw_reset()AsciiCircuit.draw_wires()AsciiCircuit.get_bit_row()AsciiCircuit.get_current_col()AsciiCircuit.get_qubit_row()AsciiCircuit.get_zvars_row()AsciiCircuit.reset()AsciiCircuit.set_current_col()
BarrierBitStringBlockBondDimCircuitCircuit.add_noise()Circuit.add_noise_to_gate_parallel()Circuit.add_noise_to_gate_single()Circuit.append()Circuit.copy()Circuit.decompose()Circuit.deepcopy()Circuit.depth()Circuit.draw()Circuit.emplace()Circuit.empty()Circuit.evaluate()Circuit.get_on_qubits()Circuit.getparams()Circuit.insert()Circuit.inverse()Circuit.is_symbolic()Circuit.listvars()Circuit.loadproto()Circuit.num_bits()Circuit.num_qubits()Circuit.num_zvars()Circuit.push()Circuit.push_expval()Circuit.push_lietrotter()Circuit.push_suzukitrotter()Circuit.push_yoshidatrotter()Circuit.remove()Circuit.sample_mixedunitaries()Circuit.saveproto()Circuit.specify_operations()
ControlDelayDepolarizingDepolarizing1Depolarizing2DetectorDiagonalOpDiffusionExpectationValueExpectationValue.asciiwidth()ExpectationValue.cregsizesExpectationValue.evaluate()ExpectationValue.get_operation()ExpectationValue.getparams()ExpectationValue.inverse()ExpectationValue.isunitary()ExpectationValue.iswrapper()ExpectationValue.opname()ExpectationValue.power()ExpectationValue.qregsizesExpectationValue.zregsizes
GATESGateGateC3X()GateCCP()GateCCX()GateCH()GateCP()GateCRX()GateCRY()GateCRZ()GateCS()GateCSDG()GateCSWAP()GateCSX()GateCSXDG()GateCU()GateCX()GateCY()GateCZ()GateCallGateCustomGateDCXGateDeclGateECRGateHGateHXYGateHXZGateHYZGateIDGateISWAPGatePGateRGateRNZGateRXGateRXXGateRYGateRYYGateRZGateRZXGateRZZGateS()GateSDG()GateSWAPGateSX()GateSXDG()GateSYGateSYDGGateT()GateTDG()GateUGateU1GateU2GateU3GateXGateXXminusYYGateXXplusYYGateYGateZGeneralizedAmplitudeDampingHamiltonianHamiltonianTermIfStatementInstructionInstruction.asciiwidth()Instruction.bitsInstruction.copy()Instruction.decompose()Instruction.deepcopy()Instruction.evaluate()Instruction.get_bits()Instruction.get_operation()Instruction.get_qubits()Instruction.get_zvars()Instruction.getparams()Instruction.inverse()Instruction.listvars()Instruction.matrix()Instruction.num_bits()Instruction.num_qubits()Instruction.num_zvars()Instruction.operationInstruction.qubitsInstruction.zvars
InverseKrausLazyArgLazyExprMeasureMeasureResetMeasureResetXMeasureResetYMeasureResetZMeasureXMeasureXXMeasureYMeasureYYMeasureZMeasureZZMimiqConnectionMixedUnitaryMultiplyNotObservableIncludeOperationOperation.asciiwidth()Operation.copy()Operation.cregsizesOperation.decompose()Operation.deepcopy()Operation.evaluate()Operation.get_operation()Operation.getparam()Operation.getparams()Operation.is_symbolic()Operation.isidentity()Operation.isopalias()Operation.isunitary()Operation.iswrapper()Operation.listvars()Operation.nameOperation.num_bitsOperation.num_cregsOperation.num_qregsOperation.num_qubitsOperation.num_zvarsOperation.numparams()Operation.parnamesOperation.qregsizesOperation.zregsizes
OperatorParallelPauliNoisePauliStringPauliXPauliYPauliZPhaseAmplitudeDampingPhaseGradientPolynomialOraclePowPowerProjectiveNoiseProjectiveNoiseXProjectiveNoiseYProjectiveNoiseZProjector0Projector00Projector01Projector1Projector10Projector11ProjectorX0ProjectorX1ProjectorY0ProjectorY1ProjectorZ0ProjectorZ1QCSResultsQFTQubitCoordinatesRPauliRepeatRescaledGateResetResetXResetYResetZSchmidtRankShiftCoordinatesSigmaMinusSigmaPlusThermalNoiseTickVonNeumannEntropycontrol()gatedecl()inverse()krauschannelkrauschannel.cumprobabilities()krauschannel.inverse()krauschannel.isCPTP()krauschannel.ismixedunitary()krauschannel.iswrapper()krauschannel.krausmatrices()krauschannel.krausoperators()krauschannel.numparams()krauschannel.power()krauschannel.probabilities()krauschannel.squaredkrausoperators()krauschannel.unitarygates()krauschannel.unitarymatrices()krauschannel.unwrappedcumprobabilities()krauschannel.unwrappedkrausmatrices()krauschannel.unwrappedunitarymatrices()
parallel()power()push_expval()push_lietrotter()push_suzukitrotter()push_yoshidatrotter()repeat()
- GitHub
- Julia APIs
- QPerfect