Situation calculus is a logic formalism designed for representing and reasoning about dynamical domains. It was first introduced by John McCarthy in 1963. The main idea behind situation calculus is that reachable states, referred to as situations, can be defined in terms of actions that lead to them.
For example, consider a simple robotic system where a robot can move around in a room. The situation calculus can be used to represent the different states of the room and the robot’s movements, such as ‘the robot is at position X in the room’, ‘the robot is moving towards position Y’, or ‘the robot has reached position Z’.