Calculates the neighborhood-inclusion preorder of an undirected graph.

neighborhood_inclusion(g, sparse = FALSE)

## Arguments

g

An igraph object

sparse

Logical scalar, whether to create a sparse matrix

## Value

The neighborhood-inclusion preorder of g as matrix object. P[u,v]=1 if $$N(u)\subseteq N[v]$$

## Details

Neighborhood-inclusion is defined as $$N(u)\subseteq N[v]$$ where $$N(u)$$ is the neighborhood of $$u$$ and $$N[v]=N(v)\cup \lbrace v\rbrace$$ is the closed neighborhood of $$v$$. $$N(u) \subseteq N[v]$$ implies that $$c(u) \leq c(v)$$, where $$c$$ is a centrality index based on a specific path algebra. Indices falling into this category are closeness (and variants), betweenness (and variants) as well as many walk-based indices (eigenvector and subgraph centrality, total communicability,...).

## References

Schoch, D. and Brandes, U., 2016. Re-conceptualizing centrality in social networks. European Journal of Applied Mathematics 27(6), 971-985.

Brandes, U. Heine, M., Müller, J. and Ortmann, M., 2017. Positional Dominance: Concepts and Algorithms. Conference on Algorithms and Discrete Applied Mathematics, 60-71.

David Schoch

## Examples

library(igraph)
# the neighborhood inclusion preorder of a star graph is complete
g <- graph.star(5, "undirected")
P <- neighborhood_inclusion(g)
comparable_pairs(P)
#> [1] 1

# the same holds for threshold graphs
tg <- threshold_graph(50, 0.1)
P <- neighborhood_inclusion(tg)
comparable_pairs(P)
#> [1] 1

# standard centrality indices preserve neighborhood-inclusion
data("dbces11")
P <- neighborhood_inclusion(dbces11)

is_preserved(P, degree(dbces11))
#> [1] TRUE
is_preserved(P, closeness(dbces11))
#> [1] TRUE
is_preserved(P, betweenness(dbces11))
#> [1] TRUE