[sledge] Fix Equality.canon to handle changing term classification
[sledge] Fix Equality.canon to handle changing term classification

Summary:
It can happen that canonizing subterms can change the classification
of a term e.g. to the literal true. In such cases, it is not useful or
correct use `Equality.lookup` (which expects to only be used on
uninterpreted applications) to search for some other equation equal to
the literal and use its representative instead.

Reviewed By: ngorogiannis

Differential Revision: D20120279

fbshipit-source-id: 3e2160233

jvillard/infer,jvillard/infer,facebook/infer,facebook/infer,facebook/infer,jvillard/infer,jvillard/infer,facebook/infer,jvillard/infer,facebook/infer,jvillard/infer,jvillard/infer,facebook/infer,facebook/infer