Объединение пар в группы

У меня есть пары элементов в массиве PHP. Пример:

<?php $elements = array( 'tiger'=>'lion', 'car'=>'bike', 'lion'=>'zoo', 'truck'=>'plane' ); ?> 

Теперь я хочу объединить эти элементы, чтобы все элементы, которые связаны каким-либо образом, переходят в одну группу. Продолжение приведенного выше примера:

 <?php $groups = array( 0=>array('tiger', 'lion', 'zoo'), 1=>array('car', 'bike'), 2=>array('truck', 'plane' ); ?> 

Это понятно? Как я мог это достичь?

Я ищу функцию, которая делает это.