diff options
author | 2025-04-28 09:32:39 +0300 | |
---|---|---|
committer | 2025-04-28 09:32:39 +0300 | |
commit | aa7c54a7f82f1745d392cd019c753e68ca5fe2fc (patch) | |
tree | 5d66fec81cadcfad881626f5ea531f6468dc0afb /src/main.rs | |
parent | feat: read truth table from file (diff) | |
download | logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.tar.gz logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.tar.bz2 logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.tar.lz logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.tar.xz logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.tar.zst logic-rust-aa7c54a7f82f1745d392cd019c753e68ca5fe2fc.zip |
fix: incorrect CNF result when no variables are used
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index bc22521..e8c3849 100644 --- a/src/main.rs +++ b/src/main.rs @@ -292,9 +292,9 @@ fn cubes_to_dnf(cubes: &[Cube], vars: &[&str]) -> Logic { // NOTE: returns inverted result fn cubes_to_cnf(cubes: &[Cube], vars: &[&str]) -> Logic { if cubes.is_empty() { - return Logic::Constant(false); - } else if cubes.len() == 1 && cubes[0].t == 0 && cubes[0].f == 0 { return Logic::Constant(true); + } else if cubes.len() == 1 && cubes[0].t == 0 && cubes[0].f == 0 { + return Logic::Constant(false); } let mut dnf = vec![]; |