A graph rewriting model enhanced with sharing for OR-parallel execution of logic programs