Return the first match of a backward chaining goal.
any pattern-to-instantiate goal-to-prove => result, successp
A list or symbol.
Any backward chaining goal.
nil or a value matching pattern-to-instantiate
The backward chaining inference engine is started to look for any set of bindings which satisfy goal-to-prove. Using those bindings, pattern-to-instantiate is instantiated and returned.
Two values are returned. The second value indicates with
t that a proof was found, or with
nil that no proof exists. In the former case, the first value is the instantiated version of pattern-to-instantiate, in the latter case, the first value is
Any subgoals that match the object base will only find objects from the current inferencing state.
(any '(?x is in (1 2 3)) '(member ?x (1 2 3)))
(1 IS IN (1 2 3)), T
(any '(?truck is a truck) '(truck ?truck))
(#<TRUCK TRUCK5> IS A TRUCK), T
KnowledgeWorks and Prolog User Guide (Macintosh version) - 24 Mar 2017