It is known that the halting problem cannot have a definite solution, one that a) returns true <== the program does indeed halt, and b) handles any input, but I was wondering if there are good enough solutions to the problem, ones that can maybe handle certain types of program flows perfectly, or is able to identify it when it cannot correctly solve the problem, and so on....
If so, how good are they, and what ideas/limitations do they rely on?