core op• Data kinds: matrix → table
• Call: import fullseye as fs; fs.ledger.graph_kcore(adj, mode='total', weighted=False) (to call the implementation directly, import graphinv; graphinv.graph_kcore(adj, mode='total', weighted=False); from the registry, opsgraph.get("graph_kcore"))
k-core (or weighted s-core) decomposition of a wiring matrix — every node's core index.
A k-core is the maximal subgraph in which every node has degree at least k (Seidman 1983); a node's core index is the largest k of a core it belongs to. mode picks the degree: "in" (inputs a node receives), "out", "total" (in + out; a reciprocal pair counts twice, as in conngraph.graph_rich_club) or "undirected" (an edge in either direction counts once — this is what networkx.core_number computes on the symmetrised graph). With weighted=True the degree is the strength (sum of weights, e.g. synapse counts) and the result is the s-core of Eidsaa & Almaas 2013: the index is the running maximum of the minimum strength during peeling, so it is a real number with the units of the weights. Self-loops are dropped.
Returns a dict: core (n,) — the index per node (int for k-core, float for s-core); kmax — the innermost index; inner (n,) bool — nodes of the innermost core; n_inner; levels — the distinct indices in increasing order and counts — how many nodes have each (sum(counts) == n); mode; weighted.
Identities (the tests): a complete graph on n nodes has every index n−1; a tree 1; a cycle 2; undirected agrees with networkx.core_number on random graphs; the s-core of a 0/1 matrix equals the k-core; multiplying every weight by c multiplies every s-core index by c; the innermost core is never empty and every one of its nodes has at least kmax (weighted: strength) inside the core.
Raises ValueError: as graph_degree_summary (non-square, negative, non-finite, string / bool / complex / masked input); mode not one of in / out / total / undirected.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• poc_worm_core_persists — py -3.11 examples/poc_worm_core_persists.py
table as input)graph_edge_consensus · graph_core_persistence · tree_morphometry · tree_sholl · tree_run_length
core)*Provenance: graphinv.py — GRAPH operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.