fix(library/unifier): make sure we do not miss dependency

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/standard/logic): mark 'not equal' as an abbreviation

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(kernel/metavar): make sure instantiate_metavars_fn does not loop on 'fake' recursive dependencies, we say they are fake because they disappear after applying beta-reduction

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/standard/logic): add imp_or theorems

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/standard): add function 'helper' module

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
refactor(library/standard): rename rec to rec_on

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(library/unifier): broken optimization was missing solution

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/standard): add basic properties of binary functions

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/unifier): solve constraints of the form '(max l1 l2) =?= 0' and '(imax l1 l2) =?= 0'

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
chore(library/standard): port (an older version of) Floris's nat library to Lean 0.2

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>