A predicate function is a boolean function. It returns a true or a false value. An example would be bool is_inside(Point p, Circle c). This function determines if the point p lies within the circle c. In the calling program you could use it as follows:

							 if (is_inside(this_point, my_circle))
                cout << "The point is inside the circle.\n";
        else
                cout << "The point lies outside the circle.\n";