CompositionMaps( paramap2, paramap1 )
CompositionMaps( paramap2, paramap1, class )
For parametrized maps paramap1 and paramap2 where paramap[i] is
a bound position or a set of bound positions in paramap2,
CompositionMaps( paramap2, paramap1 ) is a parametrized map with
image CompositionMaps( paramap2, paramap1, class ) at position
class.
If paramap1[ class ] is unique, we have
[ CompositionMaps( paramap2, paramap1, class ) =
paramap2[ paramap1[ class ] ], ]
otherwise it is the union of
paramap2[i] for i in paramap1[ class ].
    gap> map1:= [ 1, [ 2, 3, 4 ], [ 4, 5 ], 1 ];;
    gap> map2:= [ [ 1, 2 ], 2, 2, 3, 3 ];;
    gap> CompositionMaps( map2, map1 ); CompositionMaps( map1, map2 );
    [ [ 1, 2 ], [ 2, 3 ], 3, [ 1, 2 ] ]
    [ [ 1, 2, 3, 4 ], [ 2, 3, 4 ], [ 2, 3, 4 ], [ 4, 5 ], [ 4, 5 ] ]
Note: If you want to get indirections of characters which contain
unknowns (see chapter Unknowns) instead of sets of possible values,
use Indirected Indirected.
GAP 3.4.4