|
313 | 313 | "|`qreg name[size];`| supported (see mapping qubits)| Declare a named register of qubits|`qreg q[5];`|\n", |
314 | 314 | "|`creg name[size];`|supported (see mapping classical register to measurement keys)| Declare a named register of bits|`creg c[5];`|\n", |
315 | 315 | "|`include\"filename\";`| supported ONLY to include the standard\"qelib1.inc\" lib for compatibility| Open and parse another source file|`include\"qelib1.inc\";`|\n", |
316 | | -"|`gate name(params) qargs;`|NOT supported| Declare a unitary gate||\n", |
| 316 | +"|`gate name(params) qargs;`| supported| Declare a unitary gate|`gate g(p0, p1) q0, q1 { rx(p0) q0; ry(p0+p1) q0, rz(p1) q1; }`|\n", |
317 | 317 | "|`opaque name(params) qargs;`| NOT supported| Declare an opaque gate||\n", |
318 | 318 | "|`// comment text`| supported|Comment a line of text|`// supported!`|\n", |
319 | 319 | "|`U(θ,φ,λ) qubit/qreg;`| supported| Apply built-in single qubit gate(s)|``U(pi/2,2*pi/3,0) q[0];``|\n", |
320 | 320 | "|`CX qubit/qreg,qubit/qreg;`| supported|Apply built-in CNOT gate(s)|`CX q[0],q[1];`|\n", |
321 | 321 | "|measure qubit/qreg|supported|Make measurements in Z basis||\n", |
322 | | -"|`reset qubit/qreg;`|NOTsupported|Prepare qubit(s) in <code>|0></code>|`reset q[0];`|\n", |
| 322 | +"|`reset qubit/qreg;`| supported|Prepare qubit(s) in <code>|0></code>|`reset q[0];`|\n", |
323 | 323 | "|`gatename(params) qargs;`| supported for ONLY the supported subset of standard gates defined in\"qelib1.inc\"|Apply a user-defined unitary gate|`rz(pi/2) q[0];`|\n", |
324 | | -"|`if(creg==int) qop;`|NOTsupported| Conditionally apply quantum operation|`if(c==5) CX q[0],q[1];`|\n", |
| 324 | +"|`if(creg==int) qop;`| supported| Conditionally apply quantum operation|`if(c==5) CX q[0],q[1];`|\n", |
325 | 325 | "|`barrier qargs;`| NOT supported| Prevent transformations across this source line|`barrier q[0],q[1];`|\n" |
326 | 326 | ] |
327 | 327 | }, |
|