slightly stricter variant of syntactic horizon
generalise syntactic horizon