circuit
Circuit
The Circuit class is the only interface to access OpenSquirrel's features.
Example
Source code in opensquirrel/circuit.py
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 | |
instruction_count
property
Count the instructions in the circuit by name.
measurement_to_bit_map
property
Determines and returns the measurement to bit register index mapping.
__init__
Create a circuit object from a register manager and an IR.
Source code in opensquirrel/circuit.py
__repr__
asm_filter
Filter the assembly declarations in the circuit for a specific backend.
Note
This will remove all assembly declarations that do not match the specified backend name.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
backend_name
|
str
|
The backend name to filter for. |
required |
Source code in opensquirrel/circuit.py
decompose
Decomposes the circuit using to the specified decomposer.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
decomposer
|
Decomposer
|
The decomposer to apply. |
required |
Source code in opensquirrel/circuit.py
export
Exports the circuit using the specified exporter.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
exporter
|
Exporter
|
The exporter to apply. |
required |
from_string
classmethod
Create a circuit from a cQASM string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
cqasm_string
|
str
|
A cQASM string. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
Circuit |
Circuit
|
The circuit generated from the cQASM string. |
Source code in opensquirrel/circuit.py
map
Maps the (virtual) qubits of the circuit to the physical qubits of the target hardware using the specified mapper.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mapper
|
Mapper
|
The mapper to apply. |
required |
Source code in opensquirrel/circuit.py
merge
Merges the circuit using the specified merger.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
merger
|
Merger
|
The merger to apply. |
required |
replace
Manually replace occurrences of a given gate with a list of gates.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
gate
|
type[Gate]
|
The gate type to be replaced. |
required |
replacement_gates_function
|
Callable[..., list[Gate]]
|
function that describes the replacement gates. |
required |
Source code in opensquirrel/circuit.py
route
Routes the circuit using the specified router.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
router
|
Router
|
The router to apply. |
required |
validate
Validates the circuit using the specified validator.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
validator
|
Validator
|
The validator to apply. |
required |