- 
                Notifications
    You must be signed in to change notification settings 
- Fork 2.7k
Open
Labels
type: feature requestNew feature or requestNew feature or request
Milestone
Description
What should we add?
To make the behavior of Target more consistent with the way it works in Rust, we should be able to pass a different name to gates with fixed parameters being passed to the Target.
For example:
QkTarget target = qk_target_new(1);
// This explicitly says the target only supports Rz gates with half rotations.
double rz_params[1] = {3.14};
QkTargetEntry *rz_pi_entry = qk_target_entry_new_fixed(QkGate_RZ, rz_params, "rz_pi");
// Add properties ....
qk_target_add_instruction(target, rz_pi_entry);
// This explicitly says the target also supports Rz gates with quarter rotations.
double rz_quart_params[1] = {1.57};
QkTargetEntry *rz_quart_entry = qk_target_entry_new_fixed(QkGate_RZ, rz_quart_params, "rz_quart");
// Add properties ....
qk_target_add_instruction(target, rz_quart_entry);
// This should adopt the gate's name by default as it can take any parameter for this gate.
QkTargetEntry *rx_entry = qk_target_entry_new(QkGate_RX);
// Add properties ....
qk_target_add_instruction(target, rx_entry);This will also appeal more to the way we will be querying the QkTarget via #15184.
Metadata
Metadata
Assignees
Labels
type: feature requestNew feature or requestNew feature or request
Type
Projects
Status
Ready