import { Modular, Ptolemaic, QuasiLine } from '../generation/spec/perfect-variants'; import { AnalyzerGraph, ComputePolicy } from './types.js'; /** * Compute Modular property from graph structure. * Every module is trivial (no twin vertices with identical neighborhoods) * * A modular graph has no non-trivial modules. Two vertices form a module if they * have identical external neighborhoods. * * For small graphs (n <= 10): Exhaustive pairwise comparison * For large graphs: Heuristic twin-finding (may return unconstrained for complex cases) * * @param g - Analyzer graph * @param _policy - Computation policy (unused) * @returns Modular property: "modular", "not_modular", or "unconstrained" */ export declare const computeModular: (g: AnalyzerGraph, _policy?: ComputePolicy) => Modular; /** * Compute Ptolemaic property from graph structure. * Ptolemaic graphs are both distance-hereditary AND chordal. * * A graph is Ptolemaic if and only if it satisfies both: * 1. Distance-hereditary: No induced house, hole, domino, or gem * 2. Chordal: No induced cycle of length >= 4 * * Equivalently: Ptolemaic = chordal + distance-hereditary * * @param g - Analyzer graph * @param _policy - Computation policy (unused) * @returns Ptolemaic property: "ptolemaic" or "not_ptolemaic" */ export declare const computePtolemaic: (g: AnalyzerGraph, _policy?: ComputePolicy) => Ptolemaic; /** * Compute QuasiLine property from graph structure. * Quasi-line graphs have no induced gem and no induced co-gem. * * A gem is a graph with 5 vertices: P4 (path of length 4) plus a universal vertex * connected to all vertices of the P4. The co-gem is the complement of the gem. * * Detection strategy: * 1. Check for induced gem * 2. Check for induced co-gem (gem in complement graph) * * @param g - Analyzer graph * @param _policy - Computation policy (unused) * @returns QuasiLine property: "quasi_line" or "not_quasi_line" */ export declare const computeQuasiLine: (g: AnalyzerGraph, _policy?: ComputePolicy) => QuasiLine; //# sourceMappingURL=perfect-variants.d.ts.map