Skip to main contentIBM Quantum Documentation

AI LinearFunction methods


Get available backends

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

GET
/linear_functions/backends
curl -X GET \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/backends \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json'

Responses

[
  "example"
]

Benchmark AI-powered LinearFunction pass

Returns a task ID; use the '/linear_functions/benchmark/{taskId}' endpoint to get the result.

Query Parameters

Name, TypeDescription
model
string

backend
string

The name of the backend. Refer to https://docs.quantum.ibm.com/run/get-backend-information.

Example: "ibm_kyoto"
topology
string

n_steps
integer

The number of attempts (aka steps) that the RL model should perform to find the best synthesized circuit

Body Parameters (application/json)

Name, TypeDescription
clifford_dict
Required

Example: {"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}
coupling_map
integer[][] | null

Example: [[0,1],[1,2],[2,3],[3,4]]

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

POST
/linear_functions/benchmark
curl -X POST \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/benchmark \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{"clifford_dict":{"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}}'

Responses

{
  "task_id": "example"
}

Get benchmark result

Path Parameters

Name, TypeDescription
task_id
Required
string

The ID of the benchmark task. This ID is returned by the '/linear_functions/benchmark' POST endpoint.

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

GET
/linear_functions/benchmark/{task_id}
curl -X GET \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/benchmark/{task_id} \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json'

Responses

{
  "state": "example",
  "result": null
}

Synthesize Linear Function circuit

Returns a task ID; use the '/linear_functions/synthesize/{taskId}' endpoint to get the result.

Query Parameters

Name, TypeDescription
model
string

backend
string

The name of the backend. Refer to https://docs.quantum.ibm.com/run/get-backend-information.

topology
string

qubits
integer

check_result
boolean

If true, the RL model will check the result before returning a response

Default value: false
n_steps
integer

The number of attempts (aka steps) that the RL model should perform to find the best synthesized circuit

keep_layout
boolean

Default value: true

Body Parameters (application/json)

Name, TypeDescription
clifford_dict
Required

Example: {"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}
coupling_map
integer[][] | null

Example: [[0,1],[1,2],[2,3],[3,4]]

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

POST
/linear_functions/synthesize
curl -X POST \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/synthesize \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{"clifford_dict":{"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}}'

Responses

{
  "task_id": "example"
}

Get synthesis result

Path Parameters

Name, TypeDescription
task_id
Required
string

The ID of the synthesis task. This ID is returned by the '/linear_functions/synthesize' POST endpoint.

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

GET
/linear_functions/synthesize/{task_id}
curl -X GET \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/synthesize/{task_id} \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json'

Responses

{
  "state": "example",
  "result": null
}

Get available topologies

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

GET
/linear_functions/topologies
curl -X GET \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/topologies \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json'

Responses

[
  "example"
]

Transpile a Linear Function circuit

Returns a task ID; use the '/linear_functions/transpile/{taskId}' endpoint to get the result.

Query Parameters

Name, TypeDescription
backend
string

The name of the backend. Refer to https://docs.quantum.ibm.com/run/get-backend-information.

Example: "ibm_kyoto"

Body Parameters (application/json)

Name, TypeDescription
clifford_dict
Required

Example: {"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}
Example: [{"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]},{"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]}]
qargs
Required
integer[][] | integer[]

Example: [0,1,2,3,4]
Example: [[0,1,2,3,4]]
Example: [[0,1,2,3,4],[0,1,2,3,4]]
backend_coupling_map
integer[][] | null

Example: [[1,2],[2,1]]

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

POST
/linear_functions/transpile
curl -X POST \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/transpile \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{"clifford_dict":{"destabilizer":["+IIXXX","+IIXXI","+IXXXI","+IXIXI","+XIIII"],"stabilizer":["+IIIIZ","+IZIZZ","+IZZZI","+IIZZI","+ZIIII"]},"qargs":[0,1,2,3,4]}'

Responses

{
  "task_id": "example"
}

Get transpilation result

Path Parameters

Name, TypeDescription
task_id
Required
string

The ID of the transpilation task. This ID is returned by the '/linear_functions/transpile' POST endpoint.

HTTP Response Status Codes

Status codeDescription
200Successful Response
422Validation Error

Code samples

GET
/linear_functions/transpile/{task_id}
curl -X GET \
  https://cloud-transpiler.quantum.ibm.com/linear_functions/transpile/{task_id} \
  -H 'Authorization: Bearer YOUR-TOKEN' \
  -H 'Accept: application/json'

Responses

{
  "state": "example",
  "result": null
}
Was this page helpful?
Report a bug or request content on GitHub.