I've had this idea since 2009: converting the integer factorization problem into a visual geometric constraint puzzle (based on Lattice/Gelosia multiplication). The idea is to see if we can spot symmetry-breaking patterns in the 'carry' bits, or constraints on the remainders/quotients over some radix based on divisibility implications of already selected units in the tableaux. In other words, the kind of domain-specific things that "domain-blind" SAT solvers miss.
There's a variety of constraints included, but there could be a lot more. My feeling has always been it's going to be possible to find a set of constraints that "breaks the symmetry" and lets you factor these kind of integers quickly. I have a hunch it involves "diffing across radices", in other words, get k_i bits of entropy by making some choices in radix r_i, move to radix r_i', translate those contraints into that, make some more choices, get a few more bits of entropy there, and just keep going.
Also various ways of propagating constraints through the tableaux (forward and back propagation, arc and path consistency, etc). This puzzle implements just a few of those things.
So, for now it's not about "bringing down the global financial system" (don't worry "RSA" is "safe for now" ;D) but just somethng fun to play with to give you a feel for the puzzle. If it gives you some instincts about the inner workings of the factoring puzzle, I feel happy.
This little demo definitely could improve a lot more! Enjoy :)
keepamovin•28m ago
There's a variety of constraints included, but there could be a lot more. My feeling has always been it's going to be possible to find a set of constraints that "breaks the symmetry" and lets you factor these kind of integers quickly. I have a hunch it involves "diffing across radices", in other words, get k_i bits of entropy by making some choices in radix r_i, move to radix r_i', translate those contraints into that, make some more choices, get a few more bits of entropy there, and just keep going.
Also various ways of propagating constraints through the tableaux (forward and back propagation, arc and path consistency, etc). This puzzle implements just a few of those things.
So, for now it's not about "bringing down the global financial system" (don't worry "RSA" is "safe for now" ;D) but just somethng fun to play with to give you a feel for the puzzle. If it gives you some instincts about the inner workings of the factoring puzzle, I feel happy.
This little demo definitely could improve a lot more! Enjoy :)