def _conformal_score_interval(predictions, values):
    """ Compute the non-conformity score of a set of values under some baseline predictor 
    
    Args:
        predictions: array [batch_shape, 2], a batch of interval predictions
        values: array [n_evaluations, batch_shape], note that for values batch_shape is the last dimension while for predictions batch_shape is the first dimension
        
    Returns:
        score: array [n_evaluations, batch_shape], where score[i, j] is the non-conformity score of values[i, j] under the prediction[j]
    """
    score = (values - predictions.min(dim=1, keepdims=True)[0].permute(1, 0)) / (predictions[:, 1:2] - predictions[:, 0:1]).abs().permute(1, 0) - 0.5
    return score