Skip to content

Commit 97ce059

Browse files
committed
added original function definitions in comments
1 parent 6e1fb64 commit 97ce059

File tree

3 files changed

+33
-4
lines changed

3 files changed

+33
-4
lines changed

src/Data/Fin/Relation/Ternary/Pinch.agda

+10
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,16 @@ private
3333
-- function definition; recursive calls are represented by inductive premises
3434

3535
data View : {n} (i : Fin n) (j : Fin (suc n)) (k : Fin n) Set where
36+
{-
37+
38+
-- `pinch` is the function f(i,j) such that f(i,j) = if j≤i then j else j-1
39+
40+
pinch : Fin n → Fin (suc n) → Fin n
41+
pinch {suc n} _ zero = zero
42+
pinch {suc n} zero (suc j) = j
43+
pinch {suc n} (suc i) (suc j) = suc (pinch i j)
44+
45+
-}
3646

3747
any-zero : {n} (i : Fin (suc n)) View i zero zero
3848
zero-suc : {n} (j : Fin (suc n)) View zero (suc j) j

src/Data/Fin/Relation/Ternary/PunchIn.agda

+9
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,16 @@ private
3131
-- function definition; recursive calls are represented by inductive premises
3232

3333
data View : {n} (i : Fin (suc n)) (j : Fin n) (k : Fin (suc n)) Set where
34+
{-
3435
36+
-- `punchIn` is the function f(i,j) = if j≥i then j+1 else j
37+
38+
punchIn : Fin (suc n) → Fin n → Fin (suc n)
39+
punchIn zero j = suc j
40+
punchIn (suc i) zero = zero
41+
punchIn (suc i) (suc j) = suc (punchIn i j)
42+
43+
-}
3544
zero-suc : {n} (j : Fin n) View zero j (suc j)
3645
suc-zero : {n} (i : Fin (suc n)) View (suc i) zero zero
3746
suc-suc : {n} {i} {j} {k} View {n} i j k View (suc i) (suc j) (suc k)

src/Data/Fin/Relation/Ternary/PunchOut.agda

+14-4
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,17 @@ private
3232
-- function definition; recursive calls are represented by inductive premises
3333

3434
data View : {n} (i j : Fin (suc n)) (k : Fin n) Set where
35+
{-
3536
37+
-- `punchOut` is the function f(i,j) = if j>i then j-1 else j
38+
39+
punchOut : ∀ {i j : Fin (suc n)} → i ≢ j → Fin n
40+
punchOut {_} {zero} {zero} i≢j = ⊥-elim (i≢j refl)
41+
punchOut {_} {zero} {suc j} _ = j
42+
punchOut {suc _} {suc i} {zero} _ = zero
43+
punchOut {suc _} {suc i} {suc j} i≢j = suc (punchOut (i≢j ∘ cong suc))
44+
45+
-}
3646
zero-suc : {n} (j : Fin n) View zero (suc j) j
3747
suc-zero : {n} (i : Fin (suc n)) View (suc i) zero zero
3848
suc-suc : {n} {i} {j} {k} View {n} i j k View (suc i) (suc j) (suc k)
@@ -73,16 +83,16 @@ view-complete (suc-suc v) = cong suc (view-complete v)
7383
------------------------------------------------------------------------
7484
-- Properties of the function, derived from properties of the View
7585

76-
view-cong : {i j k} {p q}
77-
View {n} i j p View {n} i k q j ≡ k p ≡ q
86+
view-cong : {i j k} {p q} View {n} i j p View {n} i k q
87+
j ≡ k p ≡ q
7888
view-cong v w refl = aux v w where
7989
aux : {i j} {p q} View {n} i j p View {n} i j q p ≡ q
8090
aux (zero-suc _) (zero-suc _) = refl
8191
aux (suc-zero i) (suc-zero i) = refl
8292
aux (suc-suc v) (suc-suc w) = cong suc (aux v w)
8393

84-
view-injective : {i j k} {p q}
85-
View {n} i j p View {n} i k q p ≡ q j ≡ k
94+
view-injective : {i j k} {p q} View {n} i j p View {n} i k q
95+
p ≡ q j ≡ k
8696
view-injective v w refl = aux v w where
8797
aux : {i j k} {r} View {n} i j r View {n} i k r j ≡ k
8898
aux (zero-suc _) (zero-suc _) = refl

0 commit comments

Comments
 (0)