Sounds good. There is a fair amount of similarity between the implementation of "clauses()" and "getClauses()" which seems somewhat bothersome. Is there any way we can only encode the underlying idea once instead of duplicating it in these two functions? http://llvm-reviews.chandlerc.com/D2977