根据以下规范，请编写一个Python函数：
给定一个列表，返回该列表中出现频率最高的元素。如果存在频率相同的元素，则返回最小的元素。
下面是一个实现：

```python
from collections import Counter

def most_frequent(lst):
    counts = Counter(lst)
    max_count = max(counts.values())
    return min(k for k, v in counts.items() if v == max_count)
```

首先，使用 `collections.Counter()` 计算每个元素在列表中出现的次数。然后，找到出现最频繁的次数，以及所有出现了该次数的元素。最后，返回出现频率最高的最小元素。