A Matching Tree Oriented Abstract Machine for Prolog