40 #ifndef _cvc3__minisat__heap_h_
41 #define _cvc3__minisat__heap_h_
53 static inline int left (
int i) {
return i+i; }
54 static inline int right (
int i) {
return i+i + 1; }
55 static inline int parent(
int i) {
return i >> 1; }
81 if (!
comp(heap[child],x))
break;
82 heap[i] = heap[child];
90 bool ok(
int n) {
return n >= 0 && n < (int)indices.
size(); }
107 DebugAssert(n > 0,
"MiniSat::Heap::insert: inserting invalid var id");
110 indices[n] = heap.
size();
118 DebugAssert(r > 0,
"MiniSatHeap:getmin: invalid var id");
119 heap[1] = heap.
last();
120 indices[heap[1]] = 1;
131 return (
size_t)i >= heap.
size()
Description: Collection of debugging macros and functions.
#define DebugAssert(cond, str)
void percolateDown(int i)
const T & last(void) const