Why do we need to declare "use <trait>"

One thing to consider is, that A doesn't have to be changed at to implement T2. Unlike interfaces in other programming languages, traits don't have to be specified when defining the type. New traits can be added to a type anywhere, even in different crates.
The trait T2 could be a some obscure helper trait that you don't care about, defined in some random library that you use.