Skip to main content

xlog_prob/compilation/
sparse_matrix.rs

1//! CSR sparse matrix representation for CNF formulas.
2
3use xlog_cuda::memory::TrackedCudaSlice;
4
5/// GPU-resident CNF in CSR (Compressed Sparse Row) format.
6#[allow(dead_code)] // reserved: CSR CNF representation for future GPU CDCL paths
7pub(crate) struct GpuCsrCnf {
8    /// Number of variables
9    pub num_vars: u32,
10    /// Number of clauses (rows)
11    pub num_clauses: u32,
12    /// CSR row pointers (length: num_clauses + 1)
13    pub row_ptr: TrackedCudaSlice<u32>,
14    /// CSR column indices (literal indices)
15    pub col_idx: TrackedCudaSlice<u32>,
16    /// CSR values (literal signs: +1 or -1)
17    pub values: TrackedCudaSlice<i8>,
18}