Software Logic Systems That Think