Injective Pure Type Systems form a large class of Pure Type Systems for which one can compute by purely syntactic means two sorts elmt(?jM) and sort(?jM), where ? is a pseudo-context and M is a pseudo-term, and such that for every sort s, ? ` M : A ^ ? ` A : s) elmt(?jM) = s ? ` M : s) sort(?jM) = s By eliminating the problematic clause in the (abstraction) rule in favour of constraints over el...