Prolog type inference file