This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module MySum | |
record ADepType : Type where | |
MkADepType : | |
(dtBase : Type) -> | |
(dtFiber : dtBase -> Type) -> | |
ADepType | |
record ADepSum : ADepType -> Type where | |
MkADepSum : |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Monoid_Unit : Type -> Type | |
Monoid_Unit carrier = carrier | |
data TypeUnit : (Monoid_Unit Type) where | |
MkTypeUnit : TypeUnit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
infixr 1 ~> | |
Relation_Arrow : Type -> Type | |
Relation_Arrow ob = (source, target: ob) -> Type | |
class RelationClass (ob: Type) where | |
(~>) : Relation_Arrow ob | |
record RelationRecord : Type where | |
MkRelation : (recOb: Type) -> (recInst: RelationClass recOb) -> RelationRecord |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mutual | |
data T1 : Type where | |
Mk1 : T1 | |
Mk2 : T2 Mk1 -> T1 | |
data T2 : T1 -> Type where | |
Mk0 : T2 Mk1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module Auto where | |
mutual | |
data T1 : Set where | |
Mk1 : T1 | |
Mk2 : T2 Mk1 -> T1 | |
data T2 : T1 -> Set where | |
Mk0 : T2 Mk1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package object types { | |
import scala.language.reflectiveCalls | |
import scala.language.higherKinds | |
// quantifiers aka (co)ends | |
type Forall[+F[_]] = { def apply[X]: F[X] } | |
type Exists[+F[_]] = F[_] | |
// basic categorical notions |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module iterY | |
total | |
iter : Nat->(x->x)->(x->x) | |
iter Z f = id | |
iter (S n) f = f . (iter n f) | |
partial | |
inf : Nat | |
inf = S inf |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module noInfinity | |
%default total | |
data T2 = Mk1 | Mk2 | |
Mk1neqMk2 : Not (Mk1 = Mk2) | |
Mk1neqMk2 Refl impossible | |
Mk2neqMk1 : Not (Mk2 = Mk1) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Ξ»(sh : β(Shadow : *) β β(ShadowOk : Shadow β *) β β(ShadowEqu : Shadow β Shadow β *) β β(ShadowRefl : β(s : Shadow) β ShadowEqu s s) β β(ShadowTrans : β(s1 : Shadow) β β(s2 : Shadow) β β(s3 : Shadow) β ShadowEqu s1 s2 β ShadowEqu s2 s3 β ShadowEqu s1 s3) β β(ShadowSym : β(s1 : Shadow) β β(s2 : Shadow) β ShadowEqu s1 s2 β ShadowEqu s2 s1) β β(Mk : β(A : *) β β(AOk : A β *) β β(AEqu : A β A β *) β β(ARefl : β(a : A) β AEqu a a) β β(ATrans : β(a1 : A) β β(a2 : A) β β(a3 : A) β AEqu a1 a2 β AEqu a2 a3 β AEqu a1 a3) β β(ASym : β(a1 : A) β β(a2 : A) β AEqu a1 a2 β AEqu a2 a1) β Shadow) β β(MkOk : β(A : *) β β(AOk : A β *) β β(AEqu : A β A β *) β β(ARefl : β(a : A) β AEqu a a) β β(ATrans : β(a1 : A) β β(a2 : A) β β(a3 : A) β AEqu a1 a2 β AEqu a2 a3 β AEqu a1 a3) β β(ASym : β(a1 : A) β β(a2 : A) β AEqu a1 a2 β AEqu a2 a1) β ShadowOk (Mk A AOk AEqu ARefl ATrans ASym)) β β(MkIsoEqu : β(A : *) β β(AOk : A β *) β β(AEqu : A β A β *) β β(ARefl : β(a : A) β AEqu a a) β β(ATrans : β(a1 : A) β β(a2 : A) β β(a3 : A) β AEqu a1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- #AND: #Prop -> #Prop -> #Prop | |
\(A: #Prop )-> \(B: #Prop )-> | |
\/(AND: #Prop )-> | |
\/(Intro: A -> B -> AND)-> | |
AND |
OlderNewer