summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Data/Morphism/Indexed.idr13
-rw-r--r--src/Data/Setoid/Indexed.idr (renamed from src/Soat/Relation.idr)12
-rw-r--r--src/Soat/Data/Product.idr4
-rw-r--r--src/Soat/FirstOrder/Algebra.idr7
-rw-r--r--src/Soat/FirstOrder/Term.idr5
-rw-r--r--src/Soat/SecondOrder/Algebra.idr3
-rw-r--r--src/Soat/SecondOrder/Algebra/Lift.idr3
7 files changed, 25 insertions, 22 deletions
diff --git a/src/Data/Morphism/Indexed.idr b/src/Data/Morphism/Indexed.idr
new file mode 100644
index 0000000..c271c90
--- /dev/null
+++ b/src/Data/Morphism/Indexed.idr
@@ -0,0 +1,13 @@
+module Data.Morphism.Indexed
+
+import Data.Setoid.Indexed
+
+public export
+IFunc : {a : Type} -> (x, y : a -> Type) -> Type
+IFunc {a} x y = (i : a) -> x i -> y i
+
+public export
+record IFunction {a : Type} (x, y : ISetoid a) where
+ constructor MkIFunction
+ func : IFunc x.U y.U
+ cong : (i : a) -> {u, v : x.U i} -> x.relation i u v -> y.relation i (func i u) (func i v)
diff --git a/src/Soat/Relation.idr b/src/Data/Setoid/Indexed.idr
index 9826d60..df5606d 100644
--- a/src/Soat/Relation.idr
+++ b/src/Data/Setoid/Indexed.idr
@@ -1,4 +1,4 @@
-module Soat.Relation
+module Data.Setoid.Indexed
import public Data.Setoid
@@ -34,13 +34,3 @@ record ISetoid (a : Type) where
public export
isetoid : (a -> Type) -> ISetoid a
isetoid u = MkISetoid u (\_ => Equal) (\_ => equiv)
-
-public export
-IFunc : {a : Type} -> (x, y : a -> Type) -> Type
-IFunc {a} x y = (i : a) -> x i -> y i
-
-public export
-record IFunction {a : Type} (x, y : ISetoid a) where
- constructor MkIFunction
- func : IFunc x.U y.U
- cong : (i : a) -> {u, v : x.U i} -> x.relation i u v -> y.relation i (func i u) (func i v)
diff --git a/src/Soat/Data/Product.idr b/src/Soat/Data/Product.idr
index 1582d02..f392a2d 100644
--- a/src/Soat/Data/Product.idr
+++ b/src/Soat/Data/Product.idr
@@ -1,8 +1,8 @@
module Soat.Data.Product
-import Control.Relation
import Data.List.Elem
-import Soat.Relation
+import Data.Morphism.Indexed
+import Data.Setoid.Indexed
%default total
diff --git a/src/Soat/FirstOrder/Algebra.idr b/src/Soat/FirstOrder/Algebra.idr
index 4b40cee..6f25f59 100644
--- a/src/Soat/FirstOrder/Algebra.idr
+++ b/src/Soat/FirstOrder/Algebra.idr
@@ -1,10 +1,9 @@
module Soat.FirstOrder.Algebra
-import Control.Relation
-
-import Soat.Data.Product
+import Data.Morphism.Indexed
+import Data.Setoid.Indexed
+import public Soat.Data.Product
import Soat.FirstOrder.Signature
-import Soat.Relation
%default total
%hide Control.Relation.Equivalence
diff --git a/src/Soat/FirstOrder/Term.idr b/src/Soat/FirstOrder/Term.idr
index 2712c88..07ab248 100644
--- a/src/Soat/FirstOrder/Term.idr
+++ b/src/Soat/FirstOrder/Term.idr
@@ -1,14 +1,13 @@
module Soat.FirstOrder.Term
-import Control.Relation
+import Data.Morphism.Indexed
+import Data.Setoid.Indexed
import Soat.Data.Product
import Soat.FirstOrder.Algebra
import Soat.FirstOrder.Signature
-import Soat.Relation
%default total
-%hide Control.Relation.Equivalence
public export
data Term : (0 sig : Signature) -> (0 _ : sig.T -> Type) -> sig.T -> Type where
diff --git a/src/Soat/SecondOrder/Algebra.idr b/src/Soat/SecondOrder/Algebra.idr
index 50b65e0..c506c85 100644
--- a/src/Soat/SecondOrder/Algebra.idr
+++ b/src/Soat/SecondOrder/Algebra.idr
@@ -1,10 +1,11 @@
module Soat.SecondOrder.Algebra
+import Data.Morphism.Indexed
+import Data.Setoid.Indexed
import Data.List.Elem
import Soat.Data.Product
import Soat.Data.Sublist
-import Soat.Relation
import Soat.SecondOrder.Signature
public export
diff --git a/src/Soat/SecondOrder/Algebra/Lift.idr b/src/Soat/SecondOrder/Algebra/Lift.idr
index 00d453a..b08eb0e 100644
--- a/src/Soat/SecondOrder/Algebra/Lift.idr
+++ b/src/Soat/SecondOrder/Algebra/Lift.idr
@@ -1,12 +1,13 @@
module Soat.SecondOrder.Algebra.Lift
import Data.List.Elem
+import Data.Morphism.Indexed
+import Data.Setoid.Indexed
import Soat.Data.Product
import Soat.Data.Sublist
import Soat.FirstOrder.Algebra
import Soat.FirstOrder.Term
-import Soat.Relation
import Soat.SecondOrder.Algebra
import Soat.SecondOrder.Signature.Lift