@staticmethod
def __is_observed__(values):
    """
        Checks if the values represent an observed evidence. If all likelihoods are 0 with exactly
        one of them being 1, then this map of values represent observed evidence.

        :param values: Map of values, where keys are values and values are likelihoods.
        :return: A boolean indicating if the values represent observed evidence.
        """
    one = 0
    zero = 0
    for k, v in values.items():
        if 1.0 == v:
            one += 1
        else:
            zero += 1
    return 1 == one and len(values) - 1 == zero
