-
Notifications
You must be signed in to change notification settings - Fork 18
/
Lec3.agda
68 lines (46 loc) · 1.1 KB
/
Lec3.agda
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
module Lec3 where
open import Basics public
open import Vec public
record Con : Set1 where
constructor _<1_
field
Sh : Set -- a set of shapes
Po : Sh -> Set -- a family of positions
<!_!>c : Set -> Set
<!_!>c X = Sg Sh \ s -> Po s -> X
open Con public
infixr 1 _<1_
Kc : Set -> Con
Kc A = {!!}
Ic : Con
Ic = {!!}
_+c_ : Con -> Con -> Con
(S <1 P) +c (S' <1 P') = {!!}
_*c_ : Con -> Con -> Con
(S <1 P) *c (S' <1 P') = {!!}
Sgc : (A : Set)(C : A -> Con) -> Con
Sgc A C = {!!}
Pic : (A : Set)(C : A -> Con) -> Con
Pic A C = {!!}
_oc_ : Con -> Con -> Con
(S <1 P) oc C = {!!}
_-c>_ : Con -> Con -> Set
(S <1 P) -c> (S' <1 P') = {!!}
_/c_ : forall {C C'} -> C -c> C' -> forall {X} -> <! C !>c X -> <! C' !>c X
m /c (s , k) = {!!}
data W (C : Con) : Set where
<$_$> : <! C !>c (W C) -> W C
BT : Con
BT = {!!}
leaf : W BT
leaf = {!!}
node : W BT -> W BT -> W BT
node s t = {!!}
_^*_ : Con -> Set -> Set
C ^* X = {!!}
_-_ : (X : Set)(x : X) -> Set
X - x = Sg X \ x' -> x' == x -> Zero
der : Con -> Con
der (S <1 P) = {!!}
BTZ : Set
BTZ = List (<! der BT !>c (W BT)) * W BT