  We present a chatbot implementing a novel dialogue management approach based
on logical inference. Instead of framing conversation a sequence of response
generation tasks, we model conversation as a collaborative inference process in
which speakers share information to synthesize new knowledge in real time. Our
chatbot pipeline accomplishes this modelling in three broad stages. The first
stage translates user utterances into a symbolic predicate representation. The
second stage then uses this structured representation in conjunction with a
larger knowledge base to synthesize new predicates using efficient graph
matching. In the third and final stage, our bot selects a small subset of
predicates and translates them into an English response. This approach lends
itself to understanding latent semantics of user inputs, flexible initiative
taking, and responses that are novel and coherent with the dialogue context.
