Verifying Boolean Satisfiability problem in polynomial time via converting into CNF

I know that every Boolean satisfiability problem or SAT(I will refer to it as this for now on) certificate can be verified in polynomial time. My question is if this (I.e. polynomial time verification) can be done for all certificates via converting the instance of the SAT problem to CNF then just mapping the corresponding T/F values in the certificate to the literals. I need a proof or reference for a proof to this.

Any proof to this would be sufficient, however to help you out you can just simply help me prove this lemma, which would complete my own proof attempt:

Lemma: EVERY propositional formula can be converted where the size of the formula only increases linearly into CNF where only satisfiability has to be preserved (equivalence need not to be preserved)? i.e. can we convert EVERY propositional formaula into an equisatisfiable cnf without exponentially exploding the size of the formula?

For your reference here is a useful Wikipedia article with some information about this topic: https://en.wikipedia.org/wiki/Conjunctive_normal_form

πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/realtheeasy8s
πŸ“…︎ Jan 01 2022
🚨︎ report
Symmetry in Boolean Satisfiability Problems

How important is symmetry in solving boolean satisfiability problems? How does it work?

I understand that there might be some case where guessing p tells you ~q and guessing q tells you ~p. Then p and q are symmetric in some sense, but I suspect that in many of these cases it would be just as easy to find that p <=> ~q as it is to find some sort of symmetry.

This is inspired by chapter 13 of The Handbook of Satisfiability 2nd edition. I looked at the beginning, and I'm kind of kind like "Cool, this looks like it should be pretty easy." Then, it starts talking about groups (which was one of my worst subjects), and the rest of the chapter is basically just gibberish to me. I can't even read it.

Is there some simple way of detecting and/or dealing with some instances of symmetry in sat problems? Can someone recommend a paper/book/video? I'm not going to understand the full group theoretic treatment of this, but I'd be interested in something less complex even if it's not useful.

πŸ‘︎ 14
πŸ’¬︎
πŸ‘€︎ u/lootsmuggler
πŸ“…︎ Aug 16 2021
🚨︎ report
Does anyone reduce boolean satisfiability problems to subset sum?

I ask this because:

  1. Boolean satisfiability problems are really hard (in some sense).
  2. Subset sum is a weakly NP-complete problem that can be solved in pseudopolynomial time with dynamic programming.

Now, I grant you that pseudopolynomial time is still in some sense exponential. But everyone converts everything to 3-sat. Why not convert everything to subset sum, which is in some sense an easier problem with the same level of power?

πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/lootsmuggler
πŸ“…︎ Jul 19 2021
🚨︎ report
What Counts as the "Input" in the Case of the Boolean Satisfiability Problem for Purposes of Calculating Time Complexity?

I've recently found myself intrigued by the subject of time complexity. I know that the Boolean Satisfiability problem is an NP-Complete problem (except for some limited cases such as 2-SAT). But what perplexes me is how the "input" is counted for the purposes of expressing Time Complexity. Are we counting each clause individually? Each literal found within in each clause? Or are we counting only each unique boolean variable? And does it make a difference whether we're talking about the decision problem or the counting problem #SAT? Does how the input is counted change at all between the two?

For an example say we were evaluating this either as a decision problem (SAT) or a counting problem (#SAT):

(a,b,c)^(-a,-b,-c)^(a,b,c)

Is the input size 2^3 (since you have 3 unique variables each of which could be true or false), or 3 on account of 3 different boolean variables to account for? Or is it 6 (six literals in a union of two clauses, the last one not counting since it's just a repeat of a previous clause)? Or is it 9 (counting the redundant clause as well)? Or is it 3, since there are 3 clauses, or 2 since there are only 2 unique clauses?

πŸ‘︎ 9
πŸ’¬︎
πŸ‘€︎ u/plinocmene
πŸ“…︎ Apr 26 2019
🚨︎ report
Boolean Satisfiability Problem; how to translate a problem to CNF

Hopefully I'm talking to the right crowd...
I'd like to understand the https://en.wikipedia.org/wiki/Boolean_satisfiability_problem and find out if I could use the MiniSat (http://minisat.se/MiniSat.html) implementation for a project I'm working on. However, I'm having trouble translating my problem into the CNF (https://en.wikipedia.org/wiki/Conjunctive_normal_form) which is the required input form for minisat. I've spent some time looking for examples, but I'm only finding quite abstract ones. My problem is quite similar to that of the Linux "package management", i.e. if I want to install package A, what other packages need to be present as well, given that A requires B and C, which in turn have their own requirements and conflicts.

Any practical examples how to translate a problem into CNF in order to feed it to minisat?

πŸ‘︎ 17
πŸ’¬︎
πŸ‘€︎ u/pwerwalk
πŸ“…︎ Dec 27 2017
🚨︎ report
Solving sudoku puzzles with Boolean Satisfiability Problem (SAT) - cryptominisat bindings github.com/death/cmsat/bl…
πŸ‘︎ 10
πŸ’¬︎
πŸ‘€︎ u/dzecniv
πŸ“…︎ Jul 30 2019
🚨︎ report
Solving Zelda puzzles with Boolean Satisfiability Solvers tech.labs.oliverwyman.com…
πŸ‘︎ 24
πŸ’¬︎
πŸ‘€︎ u/crstry
πŸ“…︎ Jun 01 2018
🚨︎ report
Reducing Boolean Satisfiability to The Witness makercasts.org/articles/t…
πŸ‘︎ 25
πŸ’¬︎
πŸ‘€︎ u/cpatuzzo
πŸ“…︎ Aug 06 2016
🚨︎ report
A Polynomial Time Bounded-error Quantum Algorithm for Boolean Satisfiability arxiv.org/abs/1507.05061
πŸ‘︎ 17
πŸ’¬︎
πŸ‘€︎ u/CyberSecPro
πŸ“…︎ Jul 22 2015
🚨︎ report
Graph Neural Networks and Boolean Satisfiability by Benedikt Bunz and Matthew Lamm [PDF] cs224d.stanford.edu/repor…
πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/turnersr
πŸ“…︎ Dec 07 2015
🚨︎ report
A Polynomial Time Bounded-Error Quantum Algorithm for Boolean Satisfiability arxiv.org/abs/1507.05061
πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/qznc_bot
πŸ“…︎ Jul 22 2015
🚨︎ report
Reducing Boolean Satisfiability to The Witness makercasts.org/articles/t…
πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/cpatuzzo
πŸ“…︎ Aug 06 2016
🚨︎ report
Boolean Satisfiability from Theoretical hardness to Practical success cacm.acm.org/magazines/20…
πŸ‘︎ 14
πŸ’¬︎
πŸ‘€︎ u/erocarrera
πŸ“…︎ Nov 07 2010
🚨︎ report
Searching for Truth: Techniques for Satisfiability of Boolean Formulas [PDF] agora.cs.illinois.edu/dow…
πŸ‘︎ 5
πŸ’¬︎
πŸ‘€︎ u/rolfr
πŸ“…︎ Feb 01 2009
🚨︎ report
Doing the homework for the Donut tutorial, but having some problems: Am I using Boolean wrong? reddit.com/gallery/rzmher
πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/KuchikukanFubuki
πŸ“…︎ Jan 09 2022
🚨︎ report
Multiple distinct solutions for a 2-SAT (2-Satisfiability) problem

How would one identify if there are multiple distinct 2-SAT problem and what they are? I think it might have something to do with sharp satisfiability.

πŸ‘︎ 12
πŸ’¬︎
πŸ‘€︎ u/laxbro1086
πŸ“…︎ Nov 06 2020
🚨︎ report
Blender Guru House Tutorial - Boolean problem

Alright, so I've never ran into a problem that got me completely stuck, especially something like this. I've tried to fix it for an hour now with no luck. I've re-watched this part of the tutorial 10x and I'm doing exactly what he's doing (unless, I'm not?), but the panels still won't go to the roof.

Process: create panel as separate object, array passed the roof, add solidify mod. From there I use the house' base mesh as the boolean for the panels. I select the panels and add the boolean with it set to intersect and fast solver. Then I select the house' base object and slightly scale it up using alt-S.

Please help lol.

EDIT: SOLVED. I think making the house a bit taller fixed it... not sure why, but it worked when I started from scratch. I didn't do anything different except for that, that I'm aware of.

https://preview.redd.it/zibou9jbbv181.jpg?width=2189&format=pjpg&auto=webp&s=c4361dc8812efa711a43fc48607fe1ed5b54148b

πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/CircleofSorrow1
πŸ“…︎ Nov 26 2021
🚨︎ report
First attempt at more surgical manipulation of vertices instead of box modeling. Had to do some problem solving with the phone receiver and rotary dial (didn't use booleans for holes) and learned a lot. Can I get your critiques? reddit.com/gallery/o8m2fo
πŸ‘︎ 44
πŸ’¬︎
πŸ‘€︎ u/cakelordli
πŸ“…︎ Jun 27 2021
🚨︎ report
How are NP-complete problems converted into satisfiability problems?

In 'The Master Algorithm' by Pedro Domingos, it's said that many science problems are the same, at heart. He says that problems like figuring out how proteins fold into their characteristic shapes, inferring three dimensional shapes from two dimensional views, forming a stable coalition in politics, optimizing resource allocation, scheduling flights, and so on, are all NP-complete problems. Pedro goes on to explain that these NP-complete problems are the same at heart, because they can be converted into satisfiability problems.

My understanding is that a satisfiability problem is an AND of ORs. For instance, suppose X, Y and Z are Boolean variables. We can AND them together in clauses, and then OR various clauses together. This is conjunctive normal form (CNF). For instance, in the following problem, we need to assign X, Y, Z to True and False, such that as many clauses as possible evaluate to True: (X OR Y) AND (X OR NOT Z) AND (X OR NOT Y OR Z)

That's where my understanding ends, and my confusion begins.

I presume the goal is to take some NP-complete problem and convert it into CNF, so that we may treat it as a satisfiability problem. However, I do not understand how one can take a problem like, forming a stable coalition in politics, and turn this into CNF. How does one do this in general, assuming that is the idea?

πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/JakeBSc
πŸ“…︎ Sep 11 2019
🚨︎ report
A short series of posts about encoding problems as Satisfiability problems medium.com/@rvprasad/sat-…
πŸ‘︎ 11
πŸ’¬︎
πŸ‘€︎ u/rvprasad
πŸ“…︎ May 04 2018
🚨︎ report
[OC] My Life in 2021 as Booleans
πŸ‘︎ 17k
πŸ’¬︎
πŸ‘€︎ u/randomo_redditor
πŸ“…︎ Jan 03 2022
🚨︎ report
Cracking PRNG's - How to encode the problem as satisfiability?

After reading this exchange, I'm very curious about how one would encode the problem of predicting the output of an LCG as an instance of boolean satisfiability.

http://crypto.stackexchange.com/questions/2086/predicting-values-from-a-linear-congruential-generator

"A more general approach, applicable also to odd n, and perhaps to unknown a and/or c, would be to encode the problem under the formalism of boolean satisfiability, and use one of the many automated solvers available. I can't predict the runtime, though. This flexible approach has broken some mildly serious ciphers, see e.g. this cryptanalysis of A5/1, or this one."

It's not immediately clear to me and my research so far hasn't turned up anything. Has anyone else heard of this before?

It would be very nice to have a way of detecting when a series of data comes from an modified LCG as described in the above post and predicting the next values.

πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/breen-machine
πŸ“…︎ Jun 27 2012
🚨︎ report
Polypaint problem with boolean

Heya, anyone knows if there is a way to avoid this kind of problem when using booleans with a polypainted mesh ?

All I did was cutting the bottom of the legs using a cube, and it destroyed the painting. And it does that with every boolean operation so I have to project the polypaint of the original everytime, it's extremely annoying and time consuming ( it takes 5 minutes to project the details on a 8Mil points mesh ).

I use the latest version of ZB but it did that on older ones too.

https://preview.redd.it/8779iziyiz471.png?width=659&format=png&auto=webp&s=414655dc557595bbec56b21e5011a1cb3856c783

πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/LordSkelos
πŸ“…︎ Jun 13 2021
🚨︎ report
ELI5: Boolean satisfiability problem (SAT) and SAT Solver
πŸ‘︎ 9
πŸ’¬︎
πŸ‘€︎ u/louisgv
πŸ“…︎ Sep 20 2017
🚨︎ report

Please note that this site uses cookies to personalise content and adverts, to provide social media features, and to analyse web traffic. Click here for more information.