Water Jug Problem in AI
Recoverable, as we can pour all water back to the 12L jug to restore the original state, hence any state derived thereof (by following the same steps from the start). The problem is, also, solvable:

[12, 0, 0]
[4,  8, 0]
[4,  3, 5]
[9,  3, 0]
[9,  0, 3]
[1,  8, 3]
[1,  6, 5]
[6,  6, 0]  # &lt;-- SOLVED; 7 steps




DETAILS: The problem stated as-is is recoverable, and in a machine learning problem statement, we take the problem as-defined, not how it could be defined. For any # of jugs of any sizes, as long as we start with only one jug filled, the entire system is recoverable - but if more than one jugs are filled, that changes the entire problem, and can make it irrecoverable.

[0, 0, ..., X,   ..., 0] &lt;-- only one jug filled
[2, 0, ..., X-2, ..., 0]
...
[2, 4, ..., ?,   ..., 7] &lt;-- some arbitrary state
...
[0, 0, ..., X,   ..., 0] &lt;-- RECOVERED; empty all other jugs into original jug


Update: the system is also recoverable if starting with any # of jugs filled, as long as they're fully filled. They also don't necessarily have to be fully filled, but it then becomes jugsize-dependent, and no generalization w/o mathematical formulation can be made.



DEFINITIONS: OP hasn't defined "recoverable", "irrecoverable", or "ignorable" - and neither Google nor DuckDuckGo reveal much. Giving my best attempt at making sense of it, each can be defined as follows:


Recoverable: state t0 can be restored from any other state T when starting at t0
Irrecoverable: there exists some state T we can get to from t0, but no longer revert to t0
Ignorable: we don't care, and can solve the problem at hand either way




Irrecoverable example: [0, 1, 2] --&gt; [0, 0, 3]. Goodbye forever, 1 liter &amp; 2 liters.



Ignorable example: goal: two jugs empty. In this case, both the original [12, 0, 0] and the irrecoverable case [0, 1, 2] work.