import { TestEdge, TestGraph, TestNode } from '../generation/generators/types'; import { PropertyValidationResult } from './types'; /** * Validate that a graph has treewidth ≤ specified bound. * * Treewidth measures how "tree-like" a graph is: * - Trees and forests have treewidth 0 * - Series-parallel graphs have treewidth ≤ 2 * - k-trees have treewidth exactly k * * This function uses an approximation algorithm based on: * 1. Finding a elimination ordering * 2. Computing the maximum clique size in the filled graph * 3. Treewidth = max_clique_size - 1 * * @param graph - Test graph to validate * @returns PropertyValidationResult with treewidth validation */ export declare const validateTreewidth: (graph: TestGraph) => PropertyValidationResult; /** * Find the size of the maximum clique in a graph. * * A clique is a complete subgraph where all vertices are connected. * This uses the Bron-Kerbosch algorithm with pivot for efficiency. * * Time complexity: O(3^(n/3)) for n vertices * * @param nodes - Graph nodes * @param edges - Graph edges * @param directed - Whether graph is directed * @param _directed * @returns Size of maximum clique */ export declare const findMaxCliqueSize: (nodes: TestNode[], edges: TestEdge[], _directed: boolean) => number; //# sourceMappingURL=treewidth-validator.d.ts.map