is a [*lattice*]{} graph if it has a [*compatible lattice*]{}, a lattice on its vertex set such that the meet and join operations, $\wedge$ and $\vee$, are polymorphisms of $G$. It is a [*distributive lattice graph*]{} or [*$\operatorname{DL}$-graph*]{} if the lattice $L$ is distributive; we call $(G,L)$ a [*$\operatorname{DL}$-pair*]{}.

It was shown in [@CDK] that $\operatorname{Ret}(G)$ can be solved, for a structure $G$, by a linear monadic Datalog program with at most one extensional predicate per rule, (i.e., $G$ has caterpillar duality), if and only if it is a retract of a $\operatorname{DL}$-graph.

To give a bit more context, a $d$-ary polymorphism $f:G^d \to G$ is a [*totally symmetric idempotent*]{} ($\operatorname{TSI}$) polymorphism if $f(v,v,\dots, v) = v$ for all $v \in V(G)$ and if $f(v_1, \dots, v_d) = f(u_1, \dots, u_d)$ whenever $\{v_1, \dots, v_d\} = \{u_1, \dots, u_d\}$. The class $\operatorname{TSI}$ of reflexive graphs $G$ admitting $\operatorname{TSI}$ polymorphisms of all aritites is important, as this is the class for which $\operatorname{Ret}(G)$ can be solved by a monadic Datalog program with at most one extensional predicate per rule, (i.e., $G$ has tree duality).

It is of interest to get a graph theoretic characterisation of the class $\operatorname{TSI}$. The two main 