Barretenberg
The ZK-SNARK library at the core of Aztec
|
symbolic Array class More...
#include <data_structures.hpp>
Public Member Functions | |
SymArray () | |
SymArray (const cvc5::Term &term, Solver *s, TermType type=TermType::SymArray) | |
SymArray (const cvc5::Sort &index_sort, const TermType &index_type, const cvc5::Sort &entry_sort, const TermType &entry_type, Solver *s, const std::string &name="") | |
Construct an empty Symbolic Array object. | |
SymArray (const std::vector< sym_index > &indicies, const std::vector< sym_entry > &entries, const std::string &name="") | |
Construct a new Symbolic Array object. | |
SymArray (const std::vector< sym_entry > &entries, const STerm &index_base, const std::string &name="") | |
Construct a new Symbolic Array object. | |
sym_entry | get (const sym_index &ind) const |
sym_entry | operator[] (const sym_index &ind) const |
void | put (const sym_index &ind, const sym_entry &entry) |
operator std::string () const | |
operator cvc5::Term () const | |
void | print_trace () const |
SymArray (const SymArray &other)=default | |
SymArray (SymArray &&other)=default | |
SymArray & | operator= (const SymArray &right)=default |
SymArray & | operator= (SymArray &&right)=default |
~SymArray ()=default | |
Public Attributes | |
Solver * | solver |
cvc5::Term | term |
TermType | type = TermType::SymArray |
TermType | ind_type |
TermType | entry_type |
Friends | |
std::ostream & | operator<< (std::ostream &out, const SymArray &term) |
symbolic Array class
allows to group separate STerms in one place and perform operations over sym indicies Compatible parameters: STerm Bool STuple SymArray SymSet
Definition at line 108 of file data_structures.hpp.
|
inline |
Definition at line 118 of file data_structures.hpp.
|
inline |
Definition at line 124 of file data_structures.hpp.
|
inline |
Construct an empty Symbolic Array object.
index_sort | cvc5 Sort of an index |
index_type | type of index Symbolic Term |
entry_sort | cvc5 Sort of an entry |
entry_type | type of entry Symbolic Term |
s | pointer to solver |
name | name of the resulting symbolic variable, defaults to var_{i} |
Definition at line 144 of file data_structures.hpp.
|
inline |
Construct a new Symbolic Array object.
indicies | vector of symbolic objects |
entries | vector of symbolic objects |
name | name of the resulting symbolic variable, defaults to var_{i} |
Definition at line 173 of file data_structures.hpp.
|
inline |
Construct a new Symbolic Array object.
Creates a vector-like array with constant integer indicies
entries | vector of symbolic entries |
index_base | example of an index. Needed to extract the sort out of STerm |
name | name of the resulting symbolic variable, defaults to var_{i} |
Definition at line 218 of file data_structures.hpp.
|
default |
|
default |
|
default |
|
inline |
Definition at line 247 of file data_structures.hpp.
|
inline |
Definition at line 261 of file data_structures.hpp.
|
inline |
Definition at line 260 of file data_structures.hpp.
|
default |
|
default |
|
inline |
Definition at line 253 of file data_structures.hpp.
|
inline |
Definition at line 263 of file data_structures.hpp.
|
inline |
Definition at line 255 of file data_structures.hpp.
|
friend |
Definition at line 265 of file data_structures.hpp.
TermType smt_terms::SymArray< sym_index, sym_entry >::entry_type |
Definition at line 116 of file data_structures.hpp.
TermType smt_terms::SymArray< sym_index, sym_entry >::ind_type |
Definition at line 115 of file data_structures.hpp.
Solver* smt_terms::SymArray< sym_index, sym_entry >::solver |
Definition at line 111 of file data_structures.hpp.
cvc5::Term smt_terms::SymArray< sym_index, sym_entry >::term |
Definition at line 112 of file data_structures.hpp.
TermType smt_terms::SymArray< sym_index, sym_entry >::type = TermType::SymArray |
Definition at line 114 of file data_structures.hpp.