Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

qiskit.aqua.circuits.DNF

class DNF(ast, num_vars=None)

GitHub

Class for constructing circuits for Disjunctive 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

__init__

__init__(ast, num_vars=None)

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


Methods

__init__(ast[, num_vars])Constructor.
compute_num_ancillae([mct_mode])returns the number of ancillary qubits needed
construct_circuit([circuit, …])Construct circuit.

Attributes

ancillary_registerreturns ancillary register
clause_registerreturns clause register
num_clausesreturns num clauses
num_variablesreturn num variables
output_registerreturns output register
variable_registerreturns variable register

ancillary_register

returns ancillary register

clause_register

returns clause register

compute_num_ancillae

compute_num_ancillae(mct_mode='basic')

returns the number of ancillary qubits needed

construct_circuit

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

num_clauses

returns num clauses

num_variables

return num variables

output_register

returns output register

variable_register

returns variable register

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