Dev/MonadicDependence/WeaklySparse/Contract.lean
1import Mathlib.Combinatorics.SimpleGraph.Copy
2import Catalog.Sparsity.Preliminaries.Contract
3import Dev.MonadicDependence.Biclique.Contract
4
5namespace Dev.MonadicDependence.WeaklySparse
6
7open Catalog.Sparsity.Preliminaries
8open Dev.MonadicDependence.Biclique
9
10/-- A graph class `𝓒` is *weakly sparse* iff there exists a bound `k`
11such that no graph from `𝓒` contains the biclique of order `k`
12(`Dev.MonadicDependence.Biclique`) as a subgraph β€” MΓ€hlmann Def. 13.5,
13p. 167.
14
15"Contains as subgraph" is `SimpleGraph.IsContained` (Mathlib;
16non-induced): an injective graph homomorphism `biclique k β†’g G`. -/
17def IsWeaklySparse (C : GraphClass) : Prop :=
18 βˆƒ k : β„•, βˆ€ {V : Type} [DecidableEq V] [Fintype V] (G : SimpleGraph V),
19 C G β†’ Β¬ (biclique k).IsContained G
20
21end Dev.MonadicDependence.WeaklySparse
22