Class find_embedding::embedding_problem_base¶
-
class find_embedding
embedding_problem_base¶ Common form for all embedding problems.
Needs to be extended with a fixed handler and domain handler to be complete.
Subclassed by find_embedding::embedding_problem< fixed_handler, domain_handler >
Public Functions
-
const vector<int> &find_embedding::embedding_problem_base
var_neighbors(int u) const¶ a vector of neighbors for the variable
u
-
const vector<int> &find_embedding::embedding_problem_base
qubit_neighbors(int q) const¶ a vector of neighbors for the qubit
q
-
int find_embedding::embedding_problem_base
num_vars() const¶ number of variables which are not fixed
-
int find_embedding::embedding_problem_base
num_qubits() const¶ number of qubits which are not reserved
-
int find_embedding::embedding_problem_base
num_fixed() const¶ number of fixed variables
-
int find_embedding::embedding_problem_base
num_reserved() const¶ number of reserved qubits
-
template <typename... Args>
void find_embedding::embedding_problem_baseerror(const char *format, Args... args) const¶ printf regardless of the verbosity level
-
template <typename... Args>
void find_embedding::embedding_problem_basemajor_info(const char *format, Args... args) const¶ printf at the major_info verbosity level
-
template <typename... Args>
void find_embedding::embedding_problem_baseminor_info(const char *format, Args... args) const¶ print at the minor_info verbosity level
-
template <typename... Args>
void find_embedding::embedding_problem_baseextra_info(const char *format, Args... args) const¶ print at the extra_info verbosity level
-
template <typename... Args>
void find_embedding::embedding_problem_basedebug(const char *ONDEBUGformat, Args... ONDEBUGargs) const¶ print at the debug verbosity level (only works when
CPPDEBUGis set)
-
int find_embedding::embedding_problem_base
randint(int m)¶ make a random integer between 0 and
m-1
-
template <typename A, typename B>
void find_embedding::embedding_problem_baseshuffle(A a, B b)¶ shuffle the data bracketed by iterators
aandb
-
void find_embedding::embedding_problem_base
qubit_component(int q0, vector<int> &component, vector<int> &visited)¶ compute the connected component of the subset
componentof qubits, containingq0, and usingvisitedas an indicator for which qubits have been explored
-
const vector<int> &find_embedding::embedding_problem_base
var_order(VARORDER order = VARORDER_SHUFFLE)¶ compute a variable ordering according to the
orderstrategy
-
void find_embedding::embedding_problem_base
dfs_component(int x, const vector<vector<int>> &neighbors, vector<int> &component, vector<int> &visited)¶ Perform a depth first search.
Public Members
-
optional_parameters &find_embedding::embedding_problem_base
params¶ A mutable reference to the user specified parameters.
-
const vector<int> &find_embedding::embedding_problem_base