def accuracy_inf_sol(inferred,cliques_solution):
    """
    'inferred' should be a set of vertices
    'cliques_solution' an iterable of all the solution cliques (as sets)
    """
    assert len(cliques_solution)!=0, "No solution provided!"
    max_overlap = 0
    best_clique_sol = cliques_solution[0]
    clique_size = len(cliques_solution[0])
    for cur_clique in cliques_solution:
        temp_inter = cur_clique.intersection(inferred)
        cur_overlap = len(temp_inter)
        if cur_overlap > max_overlap:
            max_overlap = cur_overlap
            best_clique_sol = cur_clique
    return max_overlap, clique_size, best_clique_sol