Principles of programming languages 12: Logic programming Isao Sasano Department of Information Science and Engineering.