ABC: A System for Sequential Synthesis and Verification
Loading...
Searching...
No Matches
decompose.hpp
Go to the documentation of this file.
1
#ifndef _decompose_hpp_INCLUDED
2
#define _decompose_hpp_INCLUDED
3
4
#include "
global.h
"
5
6
ABC_NAMESPACE_CXX_HEADER_START
7
8
namespace
CaDiCaL
{
9
10
// This implements Tarjan's algorithm for decomposing the binary implication
11
// graph intro strongly connected components (SCCs). Literals in one SCC
12
// are equivalent and we replace them all by the literal with the smallest
13
// index in the SCC. These variables are marked 'substituted' and will be
14
// removed from all clauses. Their value will be fixed during 'extend'.
15
16
#define TRAVERSED UINT_MAX
// mark completely traversed
17
18
struct
DFS
{
19
unsigned
idx
;
// depth first search index
20
unsigned
min
;
// minimum reachable index
21
Clause
*
parent
;
// for lrat
22
DFS
() :
idx
(0),
min
(0),
parent
(0) {}
23
};
24
25
}
// namespace CaDiCaL
26
27
ABC_NAMESPACE_CXX_HEADER_END
28
29
#endif
ABC_NAMESPACE_CXX_HEADER_START
#define ABC_NAMESPACE_CXX_HEADER_START
Definition
abc_namespaces.h:52
ABC_NAMESPACE_CXX_HEADER_END
#define ABC_NAMESPACE_CXX_HEADER_END
Definition
abc_namespaces.h:53
global.h
CaDiCaL
Definition
arena.hpp:8
CaDiCaL::Clause
Definition
clause.hpp:34
CaDiCaL::DFS::min
unsigned min
Definition
decompose.hpp:20
CaDiCaL::DFS::DFS
DFS()
Definition
decompose.hpp:22
CaDiCaL::DFS::idx
unsigned idx
Definition
decompose.hpp:19
CaDiCaL::DFS::parent
Clause * parent
Definition
decompose.hpp:21
src
sat
cadical
decompose.hpp
Generated by Doxygen 1.13.2 © 2025 EPTansuo. All rights reserved.
鲁ICP备2021046540号