feat(library/standard/logic): add identities
This commit is contained in:
parent
df60ab4ada
commit
ad969b4695
6 changed files with 4 additions and 6 deletions
|
@ -24,7 +24,7 @@ abbreviation cases_on {A B : Type} {P : (A + B) → Prop} (s : A + B)
|
|||
sum_rec H1 H2 s
|
||||
|
||||
-- Here is the trick for the theorems that follow:
|
||||
-- Fixing a1, "f s" is a recursive description of "inl B1 a1 = s".
|
||||
-- Fixing a1, "f s" is a recursive description of "inl B a1 = s".
|
||||
-- When s is (inl B a1), it reduces to a1 = a1.
|
||||
-- When s is (inl B a2), it reduces to a1 = a2.
|
||||
-- When s is (inr A b), it reduces to false.
|
||||
|
|
|
@ -179,6 +179,7 @@ iff_intro
|
|||
(assume Hb, iff_elim_right H Hb)
|
||||
(assume Ha, iff_elim_left H Ha)
|
||||
|
||||
calc_refl iff_refl
|
||||
calc_trans iff_trans
|
||||
|
||||
|
||||
|
|
|
@ -10,4 +10,5 @@ Logical operations and connectives.
|
|||
* [quantifiers](quantifiers.lean) : existential and universal quantifiers
|
||||
* [if](if.lean) : if-then-else
|
||||
* [instances](instances.lean) : type class instances
|
||||
* [identities](identities.lean) : some useful identities
|
||||
* [examples](examples/examples.md)
|
|
@ -119,8 +119,6 @@ theorem subst_iff {P : Prop → Prop} {C : congr iff iff P} {a b : Prop} (H : a
|
|||
-- Support for calculations with iff
|
||||
-- ----------------
|
||||
|
||||
calc_refl iff_refl
|
||||
calc_trans iff_trans
|
||||
calc_subst subst_iff
|
||||
|
||||
namespace iff_ops
|
||||
|
|
|
@ -6,4 +6,4 @@
|
|||
|
||||
import logic.connectives.basic logic.connectives.eq logic.connectives.quantifiers
|
||||
import logic.classes.decidable logic.classes.inhabited logic.connectives.instances
|
||||
import logic.connectives.if
|
||||
import logic.connectives.if logic.connectives.identities
|
|
@ -1,8 +1,6 @@
|
|||
----------------------------------------------------------------------------------------------------
|
||||
-- Copyright (c) 2014 Microsoft Corporation. All rights reserved.
|
||||
-- Released under Apache 2.0 license as described in the file LICENSE.
|
||||
-- Author: Leonardo de Moura
|
||||
----------------------------------------------------------------------------------------------------
|
||||
|
||||
import logic.connectives.eq
|
||||
using eq_ops
|
||||
|
|
Loading…
Reference in a new issue