I have been thinking about a better virtual friend. I have been playing with intelligent digital assistant and chat bot apps and they don't really work. Too often inane and incompetent.
This is not to deny that their text to speech is impressive and that avatar animation is often a joy to behold. The problem is that the systems don't know enough. Their domain knowledge is poor and they're not smart enough to leverage Google and Wikipedia. Most damningly, they don't know how to model you, the user.
So here is what I'm thinking. A system with a simple automated theorem prover at its heart. Distinct sets of propositions (wffs) associated with you (your beliefs) and those of people you know. An ISA ontology and a database of common-sense inference rules. Self-customising through conversational interaction with your good self. (Learning is as important as inference in the design of intelligent systems.) No purity hangups with first order predicate calculus.
Not wishing to spend a year learning Java, I'm inclined to prototype some ideas in Python.
Now, where do I go to review a decent unification algorithm?