Orbiter 2022
Combinatorial Objects
orbiter::layer2_discreta::bt_key Class Reference

DISCRETA class for databases. More...

#include <discreta.h>

Inheritance diagram for orbiter::layer2_discreta::bt_key:
Collaboration diagram for orbiter::layer2_discreta::bt_key:

Public Member Functions

 bt_key ()
 
 bt_key (const discreta_base &x)
 
bt_keyoperator= (const discreta_base &x)
 
void * operator new (size_t, void *p)
 
void settype_bt_key ()
 
kind s_virtual_kind ()
 
 ~bt_key ()
 
void freeself_bt_key ()
 
void copyobject_to (discreta_base &x)
 
std::ostream & print (std::ostream &)
 
enum bt_key_kindtype ()
 
int & output_size ()
 
int & int_vec_first ()
 
int & int_vec_len ()
 
int & field1 ()
 
int & field2 ()
 
int & f_ascending ()
 
void init (enum bt_key_kind type, int output_size, int field1, int field2)
 
void init_int4 (int field1, int field2)
 
void init_int2 (int field1, int field2)
 
void init_string (int output_size, int field1, int field2)
 
void init_int4_vec (int field1, int field2, int vec_fst, int vec_len)
 
void init_int2_vec (int field1, int field2, int vec_fst, int vec_len)
 
- Public Member Functions inherited from orbiter::layer2_discreta::Vector
 Vector ()
 
 Vector (const discreta_base &x)
 
Vectoroperator= (const discreta_base &x)
 
void * operator new (size_t, void *p)
 
void settype_vector ()
 
 ~Vector ()
 
void freeself_vector ()
 
kind s_virtual_kind ()
 
void copyobject_to (discreta_base &x)
 
std::ostream & Print (std::ostream &)
 
std::ostream & print (std::ostream &)
 
std::ostream & print_unformatted (std::ostream &ost)
 
std::ostream & print_intvec (std::ostream &ost)
 
discreta_bases_i (int i)
 
int & s_ii (int i)
 
void m_ii (int i, int a)
 
discreta_baseoperator[] (int i)
 
int s_l ()
 
void m_l (int l)
 
void m_l_n (int l)
 
void m_l_e (int l)
 
void m_l_x (int l, discreta_base &x)
 
Vectorrealloc (int l)
 
void mult_to (discreta_base &x, discreta_base &y)
 
void add_to (discreta_base &x, discreta_base &y)
 
void inc ()
 
void dec ()
 
int compare_with (discreta_base &a)
 
void append_vector (Vector &v)
 
Vectorappend_integer (int a)
 
Vectorappend (discreta_base &x)
 
Vectorinsert_element (int i, discreta_base &x)
 
Vectorget_and_delete_element (int i, discreta_base &x)
 
Vectordelete_element (int i)
 
void get_first_and_remove (discreta_base &x)
 
bool insert_sorted (discreta_base &x)
 
bool search (discreta_base &x, int *idx)
 
Vectorsort ()
 
void sort_with_fellow (Vector &fellow)
 
Vectorsort_with_logging (permutation &p)
 
void sum_of_all_entries (discreta_base &x)
 
void n_choose_k_first (int n, int k)
 
int n_choose_k_next (int n, int k)
 
void first_lehmercode (int n)
 
int next_lehmercode ()
 
void lehmercode2perm (permutation &p)
 
void q_adic (int n, int q)
 
int q_adic_as_int (int q)
 
void mult_scalar (discreta_base &a)
 
void first_word (int n, int q)
 
int next_word (int q)
 
void first_regular_word (int n, int q)
 
int next_regular_word (int q)
 
int is_regular_word ()
 
void apply_permutation (permutation &p)
 
void apply_permutation_to_elements (permutation &p)
 
void content (Vector &c, Vector &where)
 
void content_multiplicities_only (Vector &c, Vector &mult)
 
int hip ()
 
int hip1 ()
 
void write_mem (memory &m, int debug_depth)
 
void read_mem (memory &m, int debug_depth)
 
int csf ()
 
void conjugate (discreta_base &a)
 
void conjugate_with_inverse (discreta_base &a)
 
void replace (Vector &v)
 
void vector_of_vectors_replace (Vector &v)
 
void extract_subvector (Vector &v, int first, int len)
 
void PG_element_normalize ()
 
void PG_element_rank (int &a)
 
void PG_element_rank_modified (int &a)
 
void PG_element_unrank (int a)
 
void PG_element_unrank_modified (int a)
 
void AG_element_rank (int &a)
 
void AG_element_unrank (int a)
 
int hamming_weight ()
 
void scalar_product (Vector &w, discreta_base &a)
 
void hadamard_product (Vector &w)
 
void intersect (Vector &b, Vector &c)
 
int vector_of_vectors_overall_length ()
 
void first_divisor (Vector &exponents)
 
int next_divisor (Vector &exponents)
 
int next_non_trivial_divisor (Vector &exponents)
 
void multiply_out (Vector &primes, discreta_base &x)
 
int hash (int hash0)
 
int is_subset_of (Vector &w)
 
void concatenation (Vector &v1, Vector &v2)
 
void print_word_nicely (std::ostream &ost, int f_generator_labels, Vector &generator_labels)
 
void print_word_nicely2 (std::ostream &ost)
 
void print_word_nicely_with_generator_labels (std::ostream &ost, Vector &generator_labels)
 
void vector_of_vectors_lengths (Vector &lengths)
 
void get_element_orders (Vector &vec_of_orders)
 
- Public Member Functions inherited from orbiter::layer2_discreta::discreta_base
 discreta_base ()
 
 discreta_base (const discreta_base &x)
 
discreta_baseoperator= (const discreta_base &x)
 
virtual ~discreta_base ()
 
void freeself_discreta_base ()
 
void freeself ()
 
void freeself_kind (kind k)
 
void clearself ()
 
integeras_integer ()
 
longintegeras_longinteger ()
 
Vectoras_vector ()
 
permutationas_permutation ()
 
number_partitionas_number_partition ()
 
discreta_matrixas_matrix ()
 
unipolyas_unipoly ()
 
memoryas_memory ()
 
hollerithas_hollerith ()
 
bt_keyas_bt_key ()
 
databaseas_database ()
 
btreeas_btree ()
 
design_parameter_sourceas_design_parameter_source ()
 
design_parameteras_design_parameter ()
 
integerchange_to_integer ()
 
longintegerchange_to_longinteger ()
 
Vectorchange_to_vector ()
 
permutationchange_to_permutation ()
 
number_partitionchange_to_number_partition ()
 
discreta_matrixchange_to_matrix ()
 
unipolychange_to_unipoly ()
 
memorychange_to_memory ()
 
hollerithchange_to_hollerith ()
 
bt_keychange_to_bt_key ()
 
databasechange_to_database ()
 
btreechange_to_btree ()
 
design_parameter_sourcechange_to_design_parameter_source ()
 
design_parameterchange_to_design_parameter ()
 
void * operator new (size_t, void *p)
 
void settype_base ()
 
kind s_kind ()
 
virtual kind s_virtual_kind ()
 
void c_kind (kind k)
 
void swap (discreta_base &a)
 
void copyobject (discreta_base &x)
 
virtual void copyobject_to (discreta_base &x)
 
virtual std::ostream & print (std::ostream &)
 
void print_to_hollerith (hollerith &h)
 
std::ostream & println (std::ostream &)
 
std::ostream & printobjectkind (std::ostream &)
 
std::ostream & printobjectkindln (std::ostream &)
 
int & s_i_i ()
 
void m_i_i (int i)
 
virtual int compare_with (discreta_base &a)
 
int eq (discreta_base &a)
 
int neq (discreta_base &a)
 
int le (discreta_base &a)
 
int lt (discreta_base &a)
 
int ge (discreta_base &a)
 
int gt (discreta_base &a)
 
int is_even ()
 
int is_odd ()
 
void mult (discreta_base &x, discreta_base &y)
 
void mult_mod (discreta_base &x, discreta_base &y, discreta_base &p)
 
virtual void mult_to (discreta_base &x, discreta_base &y)
 
int invert ()
 
int invert_mod (discreta_base &p)
 
virtual int invert_to (discreta_base &x)
 
void mult_apply (discreta_base &x)
 
discreta_baseoperator*= (discreta_base &y)
 
discreta_basepower_int (int l)
 
discreta_basepower_int_mod (int l, discreta_base &p)
 
discreta_basepower_longinteger (longinteger &l)
 
discreta_basepower_longinteger_mod (longinteger &l, discreta_base &p)
 
discreta_basecommutator (discreta_base &x, discreta_base &y)
 
discreta_baseconjugate (discreta_base &x, discreta_base &y)
 
discreta_basedivide_by (discreta_base &x)
 
discreta_basedivide_by_exact (discreta_base &x)
 
int order ()
 
int order_mod (discreta_base &p)
 
void add (discreta_base &x, discreta_base &y)
 
void add_mod (discreta_base &x, discreta_base &y, discreta_base &p)
 
virtual void add_to (discreta_base &x, discreta_base &y)
 
void negate ()
 
virtual void negate_to (discreta_base &x)
 
void add_apply (discreta_base &x)
 
discreta_baseoperator+= (discreta_base &y)
 
virtual void normalize (discreta_base &p)
 
virtual void zero ()
 
virtual void one ()
 
virtual void m_one ()
 
virtual void homo_z (int z)
 
virtual void inc ()
 
virtual void dec ()
 
virtual int is_zero ()
 
virtual int is_one ()
 
virtual int is_m_one ()
 
discreta_basefactorial (int z)
 
discreta_basei_power_j (int i, int j)
 
virtual int compare_with_euclidean (discreta_base &a)
 
virtual void integral_division (discreta_base &x, discreta_base &q, discreta_base &r, int verbose_level)
 
void integral_division_exact (discreta_base &x, discreta_base &q)
 
void integral_division_by_integer (int x, discreta_base &q, discreta_base &r)
 
void integral_division_by_integer_exact (int x, discreta_base &q)
 
void integral_division_by_integer_exact_apply (int x)
 
int is_divisor (discreta_base &y)
 
void modulo (discreta_base &p)
 
void extended_gcd (discreta_base &n, discreta_base &u, discreta_base &v, discreta_base &g, int verbose_level)
 
void write_memory (memory &m, int debug_depth)
 
void read_memory (memory &m, int debug_depth)
 
int calc_size_on_file ()
 
void pack (memory &M, int verbose_level, int debug_depth)
 
void unpack (memory &M, int verbose_level, int debug_depth)
 
void save_ascii (std::ostream &f)
 
void load_ascii (std::istream &f)
 
void save_file (const char *fname)
 
void load_file (const char *fname)
 

Additional Inherited Members

- Public Attributes inherited from orbiter::layer2_discreta::discreta_base
kind k
 
OBJECTSELF self
 

Detailed Description

DISCRETA class for databases.

Definition at line 1441 of file discreta.h.

Constructor & Destructor Documentation

◆ bt_key() [1/2]

orbiter::layer2_discreta::bt_key::bt_key ( )

Definition at line 18 of file bt_key.cpp.

◆ bt_key() [2/2]

orbiter::layer2_discreta::bt_key::bt_key ( const discreta_base x)

Definition at line 23 of file bt_key.cpp.

◆ ~bt_key()

orbiter::layer2_discreta::bt_key::~bt_key ( )

Definition at line 49 of file bt_key.cpp.

Member Function Documentation

◆ copyobject_to()

void orbiter::layer2_discreta::bt_key::copyobject_to ( discreta_base x)
virtual

Reimplemented from orbiter::layer2_discreta::Vector.

Definition at line 65 of file bt_key.cpp.

◆ f_ascending()

int & orbiter::layer2_discreta::bt_key::f_ascending ( )
inline

Definition at line 1464 of file discreta.h.

◆ field1()

int & orbiter::layer2_discreta::bt_key::field1 ( )
inline

Definition at line 1462 of file discreta.h.

◆ field2()

int & orbiter::layer2_discreta::bt_key::field2 ( )
inline

Definition at line 1463 of file discreta.h.

◆ freeself_bt_key()

void orbiter::layer2_discreta::bt_key::freeself_bt_key ( )

Definition at line 54 of file bt_key.cpp.

◆ init()

void orbiter::layer2_discreta::bt_key::init ( enum bt_key_kind  type,
int  output_size,
int  field1,
int  field2 
)

Definition at line 84 of file bt_key.cpp.

◆ init_int2()

void orbiter::layer2_discreta::bt_key::init_int2 ( int  field1,
int  field2 
)

Definition at line 104 of file bt_key.cpp.

◆ init_int2_vec()

void orbiter::layer2_discreta::bt_key::init_int2_vec ( int  field1,
int  field2,
int  vec_fst,
int  vec_len 
)

Definition at line 121 of file bt_key.cpp.

◆ init_int4()

void orbiter::layer2_discreta::bt_key::init_int4 ( int  field1,
int  field2 
)

Definition at line 99 of file bt_key.cpp.

◆ init_int4_vec()

void orbiter::layer2_discreta::bt_key::init_int4_vec ( int  field1,
int  field2,
int  vec_fst,
int  vec_len 
)

Definition at line 114 of file bt_key.cpp.

◆ init_string()

void orbiter::layer2_discreta::bt_key::init_string ( int  output_size,
int  field1,
int  field2 
)

Definition at line 109 of file bt_key.cpp.

◆ int_vec_first()

int & orbiter::layer2_discreta::bt_key::int_vec_first ( )
inline

Definition at line 1460 of file discreta.h.

◆ int_vec_len()

int & orbiter::layer2_discreta::bt_key::int_vec_len ( )
inline

Definition at line 1461 of file discreta.h.

◆ operator new()

void * orbiter::layer2_discreta::bt_key::operator new ( size_t  ,
void *  p 
)
inline

Definition at line 1450 of file discreta.h.

◆ operator=()

bt_key & orbiter::layer2_discreta::bt_key::operator= ( const discreta_base x)

Definition at line 31 of file bt_key.cpp.

◆ output_size()

int & orbiter::layer2_discreta::bt_key::output_size ( )
inline

Definition at line 1459 of file discreta.h.

◆ print()

ostream & orbiter::layer2_discreta::bt_key::print ( std::ostream &  )
virtual

Reimplemented from orbiter::layer2_discreta::Vector.

Definition at line 78 of file bt_key.cpp.

◆ s_virtual_kind()

kind orbiter::layer2_discreta::bt_key::s_virtual_kind ( )
virtual

Reimplemented from orbiter::layer2_discreta::Vector.

Definition at line 60 of file bt_key.cpp.

◆ settype_bt_key()

void orbiter::layer2_discreta::bt_key::settype_bt_key ( )

Definition at line 39 of file bt_key.cpp.

◆ type()

enum bt_key_kind & orbiter::layer2_discreta::bt_key::type ( )
inline

Definition at line 1458 of file discreta.h.


The documentation for this class was generated from the following files: