Things in Chapter 9 my program can't (yet) do --------------------------------------------- The things I can't yet do: functional relations, i.e. substituting f(a) for a in f(a) to get f(f(a)). So there's an example in the text: 1. f(a) = b 2. f(b) = a 3. f(f(a)) = a. I think this is something like saying, in aRb (or subject-predicate, or infix) syntax: The brother of Pat is Quincy. The brother of Quincy is Pat. Who is the brother of the brother of Quincy? => Pat. My system can't yet do these types of nested substitutions. Another thing I can't yet do is disjunctions (a or b) and conjunctions (a and b). I think adding "or" and "and" shouldn't be too difficult, in fact I've played around with it in other versions of logicagent.