Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

CNF

CNF(ast, num_vars=None)

GitHub(opens in a new tab)

Class for constructing circuits for Conjunctive Normal Forms

Constructor.

Parameters

  • ast (tuple) – The logic expression as an Abstract Syntax Tree (AST) tuple
  • num_vars (int) – Number of boolean variables

Raises

AquaError – invalid input


Attributes

ancillary_register

returns ancillary register

clause_register

returns clause register

num_clauses

returns num clauses

num_variables

return num variables

output_register

returns output register

variable_register

returns variable register


Methods

construct_circuit

CNF.construct_circuit(circuit=None, variable_register=None, clause_register=None, output_register=None, ancillary_register=None, mct_mode='basic')

Construct circuit.

Parameters

  • circuit (QuantumCircuit) – The optional circuit to extend from
  • variable_register (QuantumRegister) – The optional quantum register to use for problem variables
  • clause_register (QuantumRegister) – The optional quantum register to use for problem clauses
  • output_register (QuantumRegister) – The optional quantum register to use for holding the output
  • ancillary_register (QuantumRegister) – The optional quantum register to use as ancilla
  • mct_mode (str) – The mode to use for building Multiple-Control Toffoli

Returns

quantum circuit.

Return type

QuantumCircuit

Raises

AquaError – invalid input

Was this page helpful?
Report a bug or request content on GitHub.