def threshold_restart(
    probability_threshold, current_probability, initial_temperature, **kwargs
):
    """Restarts the system by resetting the temperature to its highest value
    once the acceptance probability function has gone underneath a given
    threshold.

    Args:
        probability_threshold (float): A float located between 0 and 1,
            that gives the threshold underneath which the system should
            restart.
        current_probability (float): The system's current acceptance
            probability.
        initial_temperature (float): The system's maximal temperature.

    Returns:
        tuple of bool and float: Whether or not the system should restart
            and the system's maximal temperature.
    """
    assert 0 <= probability_threshold <= 1, (
        "Probability threshold should be located between 0 " "and 1."
    )
    return current_probability < probability_threshold, initial_temperature