aliasing constraints $x = y$ and $x \neq y$ between pointers $x$ and $y$,
points-to constraints $x\pto v$ expressing that the value $v$ is stored at the address $x$,
and predicate atoms $P(\vec{x})$ defining (usually unbounded) memory regions of a particular structure. The points-to and predicate atoms, also called spatial atoms,
are composed using the separating conjunction to specify the disjointness of memory blocks they specify.
are composed using the separating conjunction to express the disjointness of memory blocks they specify.
Let us briefly summarize the results on the SH fragments in the sequel.
Let us briefly summarize the decidability results on the SH fragments in the sequel.
For the SH fragment with the singly linked list-segment predicate, arguably the simplest SH fragment, its satisfiability and entailment problems have been shown to be in PTIME~\cite{CookHOPW11} and efficient solvers have been developed for it~\cite{SLCOMPsite}.
%
The situation changes for more complex inductive predicates: