Logic Programming in C-Kermit - Protocols

This is a discussion on Logic Programming in C-Kermit - Protocols ; After a few rounds of Object-Oriented Programming in C-Kermit, I hope you've
seen that C-Kermit can do OOP to solve some tough problems. I am about to embark
on Patterns, an advanced software subject, when I tumble on the following ...

Logic Programming in C-Kermit

After a few rounds of Object-Oriented Programming in C-Kermit, I hope you've
seen that C-Kermit can do OOP to solve some tough problems. I am about to embark
on Patterns, an advanced software subject, when I tumble on the following puzzle
in a Prolog book (Prolog and Lisp are considered as the two big tools to
research artificial intelligence):

================================================== =============================
Implement an inference engine that can handle symmetric 2-place predicates
(those whose arguments can be interchanged) without looping. Put the functor
symmetric in front of each fact that is to have the symmetric property, and let
symmetric be a prefix operator. For example: