ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
CaDiCaL::Factoring Struct Reference

#include <factor.hpp>

Collaboration diagram for CaDiCaL::Factoring:

Public Member Functions

 Factoring (Internal *, int64_t)
 
 ~Factoring ()
 

Public Attributes

Internalinternal
 
int64_t limit
 
FactorSchedule schedule
 
int initial
 
int bound
 
vector< unsigned > count
 
vector< int > fresh
 
vector< int > counted
 
vector< int > nounted
 
vector< Clause * > flauses
 
struct { 
 
   Quotient *   first 
 
   Quotient *   last 
 
quotients 
 

Detailed Description

Definition at line 35 of file factor.hpp.

Constructor & Destructor Documentation

◆ Factoring()

CaDiCaL::Factoring::Factoring ( Internal * i,
int64_t l )

Definition at line 117 of file cadical_factor.cpp.

118 : internal (i), limit (l), schedule (i) {
119 const unsigned max_var = internal->max_var;
120 const unsigned max_lit = 2 * (max_var + 1);
121 initial = max_var;
122 bound = internal->lim.elimbound;
123 enlarge_zero (count, max_lit);
124 quotients.first = quotients.last = 0;
125}
FactorSchedule schedule
Definition factor.hpp:42
vector< unsigned > count
Definition factor.hpp:46
struct CaDiCaL::Factoring::@045300102074365064333035263007161374160235131045 quotients
Internal * internal
Definition factor.hpp:40

◆ ~Factoring()

CaDiCaL::Factoring::~Factoring ( )

Definition at line 127 of file cadical_factor.cpp.

127 {
128 CADICAL_assert (counted.empty ());
129 CADICAL_assert (nounted.empty ());
130 CADICAL_assert (flauses.empty ());
131 internal->release_quotients (*this);
132 schedule.erase (); // actually not necessary
133}
#define CADICAL_assert(ignore)
Definition global.h:14
vector< int > nounted
Definition factor.hpp:49
vector< int > counted
Definition factor.hpp:48
vector< Clause * > flauses
Definition factor.hpp:50

Member Data Documentation

◆ bound

int CaDiCaL::Factoring::bound

Definition at line 45 of file factor.hpp.

◆ count

vector<unsigned> CaDiCaL::Factoring::count

Definition at line 46 of file factor.hpp.

◆ counted

vector<int> CaDiCaL::Factoring::counted

Definition at line 48 of file factor.hpp.

◆ first

Quotient* CaDiCaL::Factoring::first

Definition at line 52 of file factor.hpp.

◆ flauses

vector<Clause *> CaDiCaL::Factoring::flauses

Definition at line 50 of file factor.hpp.

◆ fresh

vector<int> CaDiCaL::Factoring::fresh

Definition at line 47 of file factor.hpp.

◆ initial

int CaDiCaL::Factoring::initial

Definition at line 44 of file factor.hpp.

◆ internal

Internal* CaDiCaL::Factoring::internal

Definition at line 40 of file factor.hpp.

◆ last

Quotient * CaDiCaL::Factoring::last

Definition at line 52 of file factor.hpp.

◆ limit

int64_t CaDiCaL::Factoring::limit

Definition at line 41 of file factor.hpp.

◆ nounted

vector<int> CaDiCaL::Factoring::nounted

Definition at line 49 of file factor.hpp.

◆ [struct]

struct { ... } CaDiCaL::Factoring::quotients

◆ schedule

FactorSchedule CaDiCaL::Factoring::schedule

Definition at line 42 of file factor.hpp.


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