Safe Haskell  None 

Language  Haskell2010 
Synopsis
 simplifyLevelConstraint :: Constraint > [Constraint] > Maybe [Constraint]
Documentation
simplifyLevelConstraint Source #
:: Constraint  Constraint 
> [Constraint]  Other constraints, enable simplification. 
> Maybe [Constraint] 

simplifyLevelConstraint c cs
turns an c
into an equality
constraint if it is an inequality constraint and the reverse
inequality is contained in cs
.
The constraints don't necessarily have to live in the same context, but they do need to be universally quanitfied over the context. This function takes care of renaming variables when checking for matches.