TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

ToySMT – simple SMT solver under 1500 SLOC of pure C

91 pointsby dennis714over 7 years ago

3 comments

jamessbover 7 years ago
The author of this (Dennis Yurichev) has also written a 200 page &quot;Quick introduction into SAT&#x2F;SMT solvers and symbolic execution&quot; that is full of examples of how SAT&#x2F;SMT solvers can be used.<p>[1]: <a href="https:&#x2F;&#x2F;yurichev.com&#x2F;writings&#x2F;SAT_SMT_draft-EN.pdf" rel="nofollow">https:&#x2F;&#x2F;yurichev.com&#x2F;writings&#x2F;SAT_SMT_draft-EN.pdf</a>
wsxcdeover 7 years ago
This is, in my opinion, not a &quot;real&quot; SMT solver. It translates an SMT instance into a SAT instance. This is easy to do for the theories the author is considering (bitvectors), but not at all straightforward for integers or reals.<p>Most SMT solvers today use the DPLL(T) technique which transfers information back and forth between a so-called theory solver (e.g., a simplex solver that handles real constraints) and a SAT solver which handles the &quot;Boolean part&quot; of the problem . I feel that an SMT solver that intends to be educational must implement DPLL(T).
评论 #16049505 未加载
mbelover 7 years ago
For anybody wondering what SMT stands here for, it&#x27;s: satisfiability modulo theory.
评论 #16046808 未加载