Where do I turn for help with research/publishing? I have been developing a SAT algorithm for a while, and have reached a point where I'd like to share it.  I don't know many people in computer science, and I'm not sure exactly where to turn.

I'm wondering what resources are available for someone with an algorithm who is considering publishing.  I also need help analyzing the runtime and correctness of my algorithm.

My major problem is in analyzing the runtime.  I need help with a detailed analysis of this.  I'm fairly certain that the algorithm is correct, but it would be helpful if someone would verify this as well.

So is there anyone who would be willing to analyze my algorithm?  Additionally, what resources are available for a task like this?
If your SAT algorithm is meant to be practical, then you should run the SAT competition benchmarks on it.  The SAT solving community is going to take your work much more seriously if you can show that your approach is competitive with existing solvers.  Your solver doesn't have to be faster than every solver, or solve more instances, but it should be a serious competitor.  You don't need a very fast or powerful machine to run the benchmarks; you can simply compare runtime against one of the free SAT solvers like MiniSAT or PicoSAT.  These solvers will also allow you to see what the answers should look like.

If you are working on a practical solver that uses new techniques, and your approach is not yet competitive, I would still suggest trying these benchmarks.  They would help you to understand the kinds of problems that you should be aiming to solve, and the kind of performance you should be aiming for.  You might also want to read some of the key chapters of the Handbook of Satisfiability, or the recent survey


Knot Pipatsrisawat and Adnan Darwiche, On Modern Clause-Learning Satisfiability Solvers, Journal of Automated Reasoning 44 277–301, 2010. (PDF)


to see the kinds of arguments that support the major solvers.  If you have new ideas that are not yet optimized to perform as well as the top solvers, you would need to explain the potential advantages of your approach to someone who knows the long sequence of theoretical reasoning that has led to the current set of "best practice" design decisions.

If your contribution is purely theoretical, then you need to be aware of the many papers in this area, and explain in your paper why your approach is better in at least some way.  Have a look at recent work by for instance Amin Coja-Oghlan or Alan Frieze to get a feel for the state of the art and for useful pointers to important papers.