Snapshots have a parent-child relationship with each other. In the linear process, each snapshot has one parent and one child, except for the last snapshot, which has no children.
The snapshots taken form a process tree. Each time you revert and take another snapshot, a branch, or child, is formed. In the process tree, each snapshot has one parent, but one snapshot can have more than one child. Many snapshots have no children.
You can revert the state of a virtual machine to any snapshot.