add simply typed lambda calculus type inferencer