abstract Sentence = Cat ** { fun PredVP : NP -> VP -> Cl ; SlashV2 : NP -> V2 -> Slash ; }