MCSat Approaches for Solving Non-linear Modular Arithmetic
summary
Presents two concrete MCSat-based solvers: PolySAT in Z3, a word-level bitvector solver that keeps variable domains as symbolic intervals, extracts forbidden intervals from linear occurrences, and already handles some 256-bit smart-contract patterns though many shapes still fall back to bit-blasting; and FFSAT prototype, a finite-field engine that builds explanations by eliminating the top variable using subresultant regular subchains (SRS) computed via Sage, compares against Gröbner-basis runs, and shows promise on random q benchmarks but currently struggles to scale to larger field sizes.
AI-written summary · about
chapters (14)
- 0:00Start
- 2:30Solving polynomial equations
- 5:27MCSAT based approaches for non-linear modular arithmetic
- 8:20MCSat - Idea
- 15:37Variable Elimination
- 16:43Single incompatibility
- 18:05Coefficient based explanation generation
- 21:46Example: SRS
- 32:28Bitvector Pitfalls
- 34:04Solving Approaches
- 34:52Bitvector Constraints in PolySAT
- 36:51How to choose values?
- 39:00Forbidden Interval Lemma
- 40:57Conflict Resolution Strategy
related talks
40mPost-Quantum
32mSymmetric Cryptanalysis I
01h 08mTutorial on Proof Systems
01h 04mExplicit SoS Lower Bounds from (Small-Set) High Dimensional Expanders
01h 02mObfuscation II
01h 16mMultilinear Maps Over the Integers: From Design to Security
01h 32mThe Short Integer Solutions Problem and Cryptographic Applications
01h 08mSecure Computation 1
