I would like to automatically get a phase gate of pi/2 converted to a S gate. I have:
import qiskit as qk
from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit,Aer
backend = Aer.get_backend('unitary_simulator')
basis_gates=['h',"cx",'t', "s"]
qreg_q = QuantumRegister(1, 'q')
replacement_circuit = QuantumCircuit(qreg_q)
replacement_circuit.s(0)
qk.circuit.equivalence_library.StandardEquivalenceLibrary.add_equivalence(qk.circuit.library.PhaseGate(np.pi/2),replacement_circuit)
qreg_q = QuantumRegister(1, 'q')
circuit = QuantumCircuit(qreg_q)
circuit.p(np.pi/2,0)
qk.transpile(circuit, backend, basis_gates)
but I get CircuitError: 'Cannot bind parameters (p[0]) not present in the circuit.'
Why?