usVectInfo :: VectInfo -> VectInfo -> VectInfo
plusVectInfo vi1 vi2 =
  VectInfo (vectInfoVar            vi1 `plusVarEnv`    vectInfoVar            vi2)
           (vectInfoTyCon          vi1 `plusNameEnv`   vectInfoTyCon          vi2)
           (vectInfoDataCon        vi1 `plusNameEnv`   vectInfoDataCon        vi2)
           (vectInfoParallelVars   vi1 `unionVarSet`   vectInfoParallelVars   vi2)
           (vectInfoParallelTyCons vi1 `unionNameSet` vectInfoParallelTyCons vi2)


plusVectInfo :: VectInfo -> VectInfo -> VectInfo
plusVectInfo vi1 vi2 =
  VectInfo (vectInfoVar            vi1 `plusVarEnv`    vectInfoVar            vi2)
           (vectInfoTyCon          vi1 `plusNameEnv`   vectInfoTyCon          vi2)
           (vectInfoDataCon        vi1 `plusNameEnv`   vectInfoDataCon        vi2)
           (vectInfoParallelVars   vi1 `unionVarSet`   vectInfoParallelVars   vi2)
           (vectInfoParallelTyCons vi1 `unionNameSet` vectInfoParallelTyCons vi2)
plusVectInfo vi1 vi2 =
  VectInfo (vectInfoVar            vi1 `plusVarEnv`    vectInfoVar            vi2)
           (vectInfoTyCon          vi1 `plusNameEnv`   vectInfoTyCon          vi2)
           (vectInfoDataCon        vi1 `plusNameEnv`   vectInfoDataCon        vi2)
           (vectInfoParallelVars   vi1 `unionVarSet`   vectInfoParallelVars   vi2)
           (vectInfoParallelTyCons vi1 `unionNameSet` vectInfoParallelTyCons vi2)