Transitive constraints not detected
RLog does not generate Transitive Constraints, though these are easy to detect.
Just look for the pattern of:
(var <URI> var)
If 2 or more of these are found, then compare the first variable in each to the last variable of all the others. Once a match is found, then those two constraints potentially merge to form a transitive constraint.
The variable to be dropped must first be searched for in the rest of the constraint. If it doesn't exist anywhere else, then the potential merge may go ahead.