~ubuntu-branches/ubuntu/wily/agda/wily-proposed

« back to all changes in this revision

Viewing changes to examples/outdated-and-incorrect/AIM6/Cat/lib/Logic/Leibniz.agda

  • Committer: Package Import Robot
  • Author(s): Iain Lane
  • Date: 2014-08-05 06:38:12 UTC
  • mfrom: (1.1.6)
  • Revision ID: package-import@ubuntu.com-20140805063812-io8e77niomivhd49
Tags: 2.4.0.2-1
* [6e140ac] Imported Upstream version 2.4.0.2
* [2049fc8] Update Build-Depends to match control
* [93dc4d4] Install the new primitives
* [e48f40f] Fix typo dev→doc

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
 
2
 
module Logic.Leibniz where
3
 
 
4
 
_≡_ : {A : Set} -> A -> A -> Set1
5
 
x ≡ y = (P : _ -> Set) -> P x -> P y
6
 
 
7
 
≡-refl : {A : Set}(x : A) -> x ≡ x
8
 
≡-refl x P px = px
9
 
 
10
 
≡-sym : {A : Set}(x y : A) -> x ≡ y -> y ≡ x
11
 
≡-sym x y xy P py = xy (\z -> P z -> P x) (\px -> px) py
12
 
 
13
 
≡-trans : {A : Set}(x y z : A) -> x ≡ y -> y ≡ z -> x ≡ z
14
 
≡-trans x y z xy yz P px = yz P (xy P px)
15
 
 
16
 
≡-subst : {A : Set}(P : A -> Set)(x y : A) -> x ≡ y -> P x -> P y
17
 
≡-subst P _ _ xy = xy P
18