logic-form 0.4.0

Rust library for representing Cube, Clause, CNF and DNF
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use super::DagCnf;
use crate::Var;
use crate::{Lbool, VarAssign};

impl DagCnf {
    pub fn var_sim(&mut self, n: Var, value: &mut VarAssign) {
        'm: for rel in self.cnf[n].iter() {
            for l in rel.iter() {
                if l.var() != n && value.v(*l) != Lbool::FALSE {
                    continue 'm;
                }
            }
            value.set(rel.last());
            return;
        }
    }
}