We study problems connected to first-order logic in graphs of bounded twin-width. Inspired by the approach of Bonnet et al. [FOCS 2020], we introduce a robust methodology of local types and describe their behavior in contraction sequences -- the decomposition notion underlying twin-width. We showcase the applicability of the methodology by proving the following two algorithmic results. In both statements, we fix a first-order formula $\varphi(x_1,\ldots,x_k)$ and a constant $d$, and we assume that on input we are given a graph $G$ together with a contraction sequence of width at most $d$. (A) One can in time $O(n)$ construct a data structure that can answer the following queries in time $O(\log \log n)$: given $w_1,\ldots,w_k$, decide whether $\phi(w_1,\ldots,w_k)$ holds in $G$. (B) After $O(n)$-time preprocessing, one can enumerate all tuples $w_1,\ldots,w_k$ that satisfy $\phi(x_1,\ldots,x_k)$ in $G$ with $O(1)$ delay. In the case of (A), the query time can be reduced to $O(1/\varepsilon)$ at the expense of increasing the construction time to $O(n^{1+\varepsilon})$, for any fixed $\varepsilon>0$. Finally, we also apply our tools to prove the following statement, which shows optimal bounds on the VC density of set systems that are first-order definable in graphs of bounded twin-width. (C) Let $G$ be a graph of twin-width $d$, $A$ be a subset of vertices of $G$, and $\varphi(x_1,\ldots,x_k,y_1,\ldots,y_l)$ be a first-order formula. Then the number of different subsets of $A^k$ definable by $\phi$ using $l$-tuples of vertices from $G$ as parameters, is bounded by $O(|A|^l)$.
翻译:我们用双维的图形来研究与一阶逻辑相关的问题。 受Bonnet 等方$[ FOCS 2020] 的方法的启发, 我们引入了一种稳健的本地类型方法, 并描述其在收缩序列中的行为 -- -- 双维背后的分解概念。 我们通过验证以下两种算法结果来展示该方法的适用性。 在两个语句中, 我们设置了美元( varphi) (x_ 1,\ldots,x_k) 和恒定美元。 我们假设, 在输入时, 我们得到美元( $) 和美元( 美元) 美元( 美元) 的美元( 美元) 美元( 美元) 美元( 美元) 美元( 美元) 美元( 美元) 美元( 美元), 美元( 美元) 美元( 美元) 美元( 美元( 美元) 美元( 美元( 美元) 美元( 美元) 美元( 美元( 美元) 美元( 美元( 美元) 美元( 美元) 美元( 美元) 美元( 美元) 美元( 美元( 美元) 美元( 美元) 美元( 美元( 美元) 美元( 美元) 美元( 美元) 美元) 美元( 美元) 美元( 美元) 美元) 美元( 美元) 美元( 美元) 美元( 美元) 美元) 美元( 美元( 美元) 美元( 美元) 美元) 的计算) 的计算( 的流), 美元( 美元( 美元( 美元( 美元) 美元( 美元) 美元( 美元( ) ) 美元( 美元) ) ) 美元( 美元) ) ) 美元( 美元( 美元( ) 美元( 美元) ) 美元( ) 美元( 美元) 美元( 美元( 美元( 美元) 美元) 美元( 美元) 美元) 美元( 美元) 美元) 美元) 美元) 美元( 美元( 美元( 美元) 美元) 美元( 美元) 美元) 美元)