Любая проверка, которая в норме исполнялась бы много раз (например, получение по индексу) может быть проделана один раз и закреплена инвариантным лайфтаймом
Ну и тут немного подумал, если всё-таки 'a: 'b, то, несмотря на невозможность подмены Guard<'b> на Guard<'a>, в иногда небезопасном коде я часто ожидаю, что одно можно сократить до другого. И, как правило, так можно делать, но в данном случае нарушит гарантии, конечно.