Tpetra: Promote "mapPairIsFitted" out of Ifpack2 into Tpetra::Map
Created by: mhoemmen
@trilinos/tpetra @trilinos/ifpack2
Promote the "mapPairIsFitted" function out of Ifpack2::LocalFilter into Tpetra::Map. This will help us fix issues like #435, #436, and ultimately #385 and #424.
For Tpetra::Map instances map1 and map2, we say that map1 is fitted to map2 (on the calling process), when the initial indices of map1 (on the calling process) are the same and in the same order as those of map2. "Fittedness" is entirely a local (per MPI process) property. The predicate "map1 is fitted to map2?" is not symmetric. For example, map2 may have more entries than map1.
If the domain Map of a matrix is fitted to the matrix's column Map on a process, then one can compute (non-transpose) matrix-vector multiply without copying the local entries of the source (multi)vector on that process.