loom Logo

Contents:

  • 1. Getting Started
    • 1.1. Installation
    • 1.2. Next Steps
  • 2. Basics
    • 2.1. Why Loom?
    • 2.2. Build a Quantum correction experiment
    • 2.3. Visualize stabilizers and qubits
      • 2.3.1. StabilizerPlot Visualizer
      • 2.3.2. Circuit Visualizer
    • 2.4. Run an experiment
  • 3. Examples
    • 3.1. Converter Example
      • 3.1.1. Conversion to QASM
      • 3.1.2. Conversion to Stim
    • 3.2. Visualizer Circuit Example
      • 3.2.1. Stabilizers
      • 3.2.2. Quantum circuit for syndrome extraction
      • 3.2.3. Construct and interpret the Eka object
      • 3.2.4. Visualization
    • 3.3. Visualizer Stabilizer Plot Example
      • 3.3.1. Rotated surface code
      • 3.3.2. Plot arbitrary Pauli strings
      • 3.3.3. Plot Pauli charges
      • 3.3.4. Plot multiple qubits on the same lattice
      • 3.3.5. Plot only a subset of stabilizers
      • 3.3.6. Creating a plot from scratch
      • 3.3.7. Non-rotated surface code
  • 4. Loom Architecture
    • 4.1. Eka
      • 4.1.1. Example
      • 4.1.2. Validations
    • 4.2. Block
      • 4.2.1. Definition
      • 4.2.2. Example
      • 4.2.3. Validations
      • 4.2.4. Assumptions
    • 4.3. Circuit
      • 4.3.1. Channels
      • 4.3.2. Circuits
      • 4.3.3. Utilities
    • 4.4. Interpretation
      • 4.4.1. Usage
      • 4.4.2. How does interpretation work?
        • Automatic dispatch
        • Interpreting operations
    • 4.5. InterpretationStep
      • 4.5.1. Output components: What the world needs
      • 4.5.2. Building components: What the world does not want to see
      • 4.5.3. Usage in the wild
      • 4.5.4. Examples for the repetition code
      • 4.5.5. Examples for the surface code
  • 5. Backends
    • 5.1. OpenQASM 3.0
    • 5.2. Stim
  • 6. Code Factories
    • 6.1. Five Qubit Perfect Code
      • 6.1.1. Five Qubit Perfect Code Block
      • 6.1.2. Operations on Five Qubit Perfect Code
    • 6.2. Repetition Code
      • 6.2.1. Repetition Code Block
      • 6.2.2. Operations on Repetition Code
    • 6.3. Rotated Surface Code
      • 6.3.1. Rotated Surface Code
        • Rotated Surface Code Block
        • Operations on Rotated Surface Codes
      • 6.3.2. Examples
        • Simple noiseless memory experiment
        • Simple noisy memory experiment
    • 6.4. Shor Code
      • 6.4.1. Shor Code Block
      • 6.4.2. Operations on Shor Code
    • 6.5. Steane Code
      • 6.5.1. Steane Code Block
      • 6.5.2. Operations on Steane Code
  • 7. API Reference
    • 7.1. Eka
      • 7.1.1. Subpackages
        • loom.eka.operations
          • Submodules
        • loom.eka.utilities
          • Submodules
      • 7.1.2. Submodules
        • loom.eka.block
          • Block
        • loom.eka.channel
          • Channel
          • ChannelType
          • create_default_label()
        • loom.eka.circuit
          • Circuit
        • loom.eka.circuit_algorithms
          • cardinal_circuit()
          • coloration_circuit()
          • extract_syndrome_circuit()
          • generate_stabilizer_and_syndrome_circuits_from_algorithm()
        • loom.eka.eka
          • Eka
        • loom.eka.lattice
          • Lattice
          • LatticeType
        • loom.eka.logical_state
          • LogicalState
        • loom.eka.matrices
          • ClassicalParityCheckMatrix
          • ParityCheckMatrix
        • loom.eka.pauli_operator
          • PauliOperator
        • loom.eka.stabilizer
          • Stabilizer
        • loom.eka.syndrome_circuit
          • SyndromeCircuit
          • default_circuit()
        • loom.eka.tanner_graphs
          • ClassicalTannerGraph
          • TannerGraph
          • cartesian_product_tanner_graphs()
          • verify_css_code_stabilizers()
    • 7.2. Interpreter
      • 7.2.1. Subpackages
        • loom.interpreter.applicator
          • Submodules
      • 7.2.2. Submodules
        • loom.interpreter.detector
          • Detector
        • loom.interpreter.interpretation_step
          • InterpretationStep
          • check_frozen()
        • loom.interpreter.interpreter
          • cleanup_final_step()
          • interpret_eka()
          • interpret_operation()
          • load_plugin_options()
        • loom.interpreter.logical_observable
          • LogicalObservable
        • loom.interpreter.syndrome
          • Syndrome
        • loom.interpreter.utilities
          • Cbit
    • 7.3. Visualizer
      • 7.3.1. Submodules
        • loom.visualizer.circuit_visualizer
          • hierarchy_layout()
          • plot_circuit_tree()
        • loom.visualizer.plotting_utils
          • average_color_hex()
          • center_of_points()
          • center_of_scatter_plot()
          • change_color_brightness()
          • convert_circuit_to_nx_graph()
          • draw_half_circle()
          • get_angle_from_x_axis()
          • get_font_color()
          • get_label_for_circuit()
          • hex_to_rgb()
          • interpolate_values()
          • order_points_counterclockwise()
          • point_in_polygon()
          • rgb_to_hex()
        • loom.visualizer.stabilizer_visualizer
          • StabilizerPlot
    • 7.4. Executor
      • 7.4.1. Submodules
        • loom.executor.circuit_error_model
          • ApplicationMode
          • AsymmetricDepolarizeCEM
          • CircuitErrorModel
          • ErrorProbProtocol
          • ErrorType
          • HomogeneousTimeDependentCEM
          • HomogeneousTimeIndependentCEM
        • loom.executor.converter
          • detector_outcomes()
          • detector_reference_states()
        • loom.executor.eka_circuit_to_cudaq_converter
          • Converter
          • EkaToCudaqConverter
        • loom.executor.eka_circuit_to_pennylane_converter
          • MEASUREMENT_OPERATIONS_MAP()
          • RESET_OPERATIONS_MAP()
          • convert_circuit_to_pennylane()
        • loom.executor.eka_circuit_to_qasm_converter
          • convert_circuit_to_qasm()
        • loom.executor.eka_circuit_to_stim_converter
          • EkaCircuitToStimConverter
          • noise_annotated_stim_circuit()
        • loom.executor.main
          • convert_circuit_to_cliffordsim()
        • loom.executor.utilities
          • format_channel_label_to_tuple()
    • 7.5. Cliffordsim
      • 7.5.1. Subpackages
        • loom.cliffordsim.moments
          • Submodules
        • loom.cliffordsim.operations
          • Submodules
      • 7.5.2. Submodules
        • loom.cliffordsim.classicalreg
          • ClassicalRegister
          • ClassicalRegisterSnapshot
        • loom.cliffordsim.data_store
          • DataStore
        • loom.cliffordsim.engine
          • Engine
        • loom.cliffordsim.exceptions
          • ClassicalOperationError
          • ClassicalRegisterError
          • EngineRunError
          • InvalidTableauError
          • PropagationError
          • TableauSizeError
        • loom.cliffordsim.invoker
          • Invoker
        • loom.cliffordsim.moment_queue
          • MomentFactory
          • MomentQueue
        • loom.cliffordsim.pauli_frame
          • PauliFrame
        • loom.cliffordsim.tableau
          • Tableau
          • TableauSnapshot
          • compare_stabilizer_set()
    • 7.6. Validator
      • 7.6.1. Submodules
        • loom.validator.check_abstract
          • AbstractValidityCheck
        • loom.validator.check_code_stabilizers
          • CodeStabilizerCheck
          • CodeStabilizerCheckOutput
          • check_code_stabilizers_output()
        • loom.validator.check_logical_ops
          • LogicalOperatorCheck
          • LogicalOperatorCheckOutput
          • check_logical_operators_transformation()
          • find_logical_state()
        • loom.validator.check_stabilizer_measurement
          • StabilizerMeasurementCheck
          • StabilizerMeasurementCheckOutput
          • check_input_stabilizer_measurement()
          • get_mresults_with_flipped_reduced_stabilizers()
        • loom.validator.circuit_validation
          • find_final_swaps()
          • get_validator_cliffordsim_operations()
          • is_circuit_valid()
          • validate_logical_state_transformations()
          • validate_logical_state_transformations_with_parity()
          • validate_measurement_to_input_stabilizer_map()
          • validate_output_stabilizers_parity()
          • validate_output_stabilizers_with_any_value()
        • loom.validator.circuit_validation_wrappers
          • is_logical_operation_circuit_valid()
          • is_syndrome_extraction_circuit_valid()
        • loom.validator.debug_dataclass
          • AllChecks
          • DebugData
        • loom.validator.utilities
          • all_possible_pauli_strings()
          • get_all_cliffordsim_registers_with_random_flags()
          • get_parity_from_cbits()
          • logical_state_transformations_to_check()
          • logical_states_to_check()
loom
  • Search


© Copyright 2025, Entropica Labs Pte Ltd.

Built with Sphinx using a theme provided by Read the Docs.