Catch 22 (logic) Article Index for
Catch
 

Information About

Catch 22 (logic)




Catch-22 situations are sometimes called vicious circles or ''' The Chicken Or The Egg ''' problems.


MATHEMATICAL DEFINITION

The problem represents a situation where A must have been preceded by B, and B must have been preceded by A. In terms of Symbolic Logic , (
eg B \Rightarrow
eg A) \wedge (
eg A \Rightarrow
eg B) where either A or B must come into being first.


ORIGINAL USE

This common use of the term represents a slightly different problem from the prime example in Heller's novel. In that novel, the Catch-22 is a No-win Situation , much like the "damned if you do, damned if you don't" scenario described further down.

The prototypical Catch-22, as formulated by Heller , considers the case of a U.S. Army Air Force Bombardier who wishes to be excused from combat flight duty. In order to be excused from such duty, he must submit an official medical diagnosis from his squadron's Flight Surgeon , demonstrating that he is unfit because he is insane. However, according to Army regulations, any sane person would naturally not want to fly combat missions because they are so dangerous. By requesting permission not to fly combat missions, on the grounds of insanity, the bombardier demonstrates that he is in fact sane and therefore is fit to fly. Conversely, any flyer who wished to fly on combat runs implicitly demonstrated that he was insane and was unfit to fly and ought to be excused, and to be excused this person would only need to submit a request. Naturally, such flyers never submitted such requests. Of course, if they did, the "catch" would assert itself, short-circuiting any such attempt to escape from combat duty.

An alternative approach to the catch follows: sanity as a prerequisite to discovering one is insane. If one submits a request to stop flying because one is insane, it shows enough sanity to recognize one is insane. In other words, one has to be sane to recognize one's own insanity.

In other words, if one does ask to be excused, this is a sign of sanity, and therefore one ''cannot'' be excused. If one does not ask to be excused, one must be insane, but one cannot be excused without asking--in which case, of course, permission would be refused. This refers to the "damned if you do, damned if you don't" scenario.

The Catch-22 problem can never be solved and one is always limited by these circumstances and these requirements.


DAMNED IF YOU DO, DAMNED IF YOU DON'T

Damned if you do, damned if you don't is another kind of Catch-22 situation, in which one is placed into an unfavorable situation no matter what choice one makes. It is representative of an impossible-to-escape, unwinnable situation. As such, it is closer to the original meaning of Catch-22.

An example of this is the Kobayashi Maru exam in the Star Trek universe. In it, a Cadet assumes a command position on a starship that intercepts an SOS message from another allied ship in enemy territory. If they choose to ignore it, the ship is eventually attacked by enemy forces and destroyed with no survivors. However, if they choose to enter enemy territory to try to rescue the other ship, they find that the SOS was a decoy for an enemy trap, and they are attacked by a superior enemy force and destroyed.


DEADLOCK

In computer science, a Deadlock is a condition whereby two Processes are waiting for a particular resource which the other has and will release only after receiving the resource it is waiting for. Thus, the only way the resource will become available for one of the processes is if the other releases it - which neither will do, until it receives the resource that the other has.

For example, suppose Process A has a block of Memory , and needs to access a Disk Drive . Meanwhile, Process B has control of the disk drive, and needs to put its information in memory - specifically, it needs the block of memory Process A controls. Process A will hold on to its block of memory and wait for the disk drive to become available, while Process B will hold on to the disk drive and wait for the memory to become available. Thus, both processes will endlessly block each other.

Thus, this situation is a ''vicious circle'' (as defined earlier) and is a good example of a ''Catch-22''. A deadlock is, of course, not a desirable state in a computing system.


SEE ALSO