assDepGraphFromDescList :: (ConstantName -> AssDefinition -> a)
                        -> [(ConstantName, AssDefinition)]
                        -> AssignmentDepGraph a
assDepGraphFromDescList f l = depGraphFromDescList getPs id $ map g l where
    g (cn, ad) = (cn, DepGraphAnno { annoDef = ad, annoVal = f cn ad })
    getPs _ = map SimpleConstant . Set.toList . setOfUserDefined . getDefiniens
              . annoDef
assDepGraphFromDescList :: (ConstantName -> AssDefinition -> a)
                        -> [(ConstantName, AssDefinition)]
                        -> AssignmentDepGraph a
assDepGraphFromDescList f l = depGraphFromDescList getPs id $ map g l where
    g (cn, ad) = (cn, DepGraphAnno { annoDef = ad, annoVal = f cn ad })
    getPs _ = map SimpleConstant . Set.toList . setOfUserDefined . getDefiniens
              . annoDef
assDepGraphFromDescList f l = depGraphFromDescList getPs id $ map g l where
    g (cn, ad) = (cn, DepGraphAnno { annoDef = ad, annoVal = f cn ad })
    getPs _ = map SimpleConstant . Set.toList . setOfUserDefined . getDefiniens
              . annoDef