The Yale Shooting Problem

Study the discussion of the Yale Shooting Problem. As you see, the constraints allow sequences such as [-loaded,+load,Floaded][-loaded] and [+alive,+shoot,Floaded,Falive][+alive]. In other words, loading a gun might fail and shooting might have no effect on the life of the target. The common sense knowledge that only a loaded gun can be fired is also missing.

Your task in this exercise is to take the script in YaleShooting.txt and add three new constraints. One stipulates that loading a gun always results in the gun being loaded. The other should have the effect that a shot always takes the life of the target. And the third makes +loaded a prerequisite for +shoot.

Add new test cases to the end of the original script to verfify that your constraints have the intended effect.