It is based on a model of computation that splits the computational burden between a computer and a human: one part is solved by computer and the other part solved by human.
This model of computation divides computational tasks between a computer and a human, assigning some to the computer and others to humans.