13
f : (Set -> Set -> Set) -> Set
22
suc m + n = suc (m + n)
24
postulate _-_ : ℕ -> ℕ -> ℕ
33
record Equiv {a : Set} (_≈_ : a -> a -> Set) : Set where
35
refl : forall x -> x ≈ x
36
sym : {x y : a} -> x ≈ y -> y ≈ x
37
_`trans`_ : forall {x y z} -> x ≈ y -> y ≈ z -> x ≈ z
39
data _≡_ {a : Set} (x : a) : a -> Set where
42
subst : forall {a x y} ->
43
(P : a -> Set) -> x ≡ y -> P x -> P y
44
subst {x = x} .{y = x} _ refl p = p
46
Equiv-≡ : forall {a} -> Equiv {a} _≡_
48
record { refl = \_ -> refl
50
; _`trans`_ = _`trans`_
53
sym : {x y : a} -> x ≡ y -> y ≡ x
56
_`trans`_ : {x y z : a} -> x ≡ y -> y ≡ z -> x ≡ z
57
refl `trans` refl = refl
65
{-# BUILTIN STRING String #-}
66
{-# BUILTIN CHAR Char #-}
67
{-# BUILTIN INTEGER Int #-}
68
{-# BUILTIN FLOAT Float #-}
70
{-# BUILTIN NATURAL ℕ #-}
71
{-# BUILTIN SUC suc #-}
72
{-# BUILTIN ZERO zero #-}
74
data [_] (a : Set) : Set where
76
_∷_ : a -> [ a ] -> [ a ]
78
{-# BUILTIN LIST [_] #-}
79
{-# BUILTIN NIL [] #-}
80
{-# BUILTIN CONS _∷_ #-}
83
primStringToList : String -> [ Char ]
86
string = primStringToList "∃ apa"
91
anotherString : String
92
anotherString = "¬ be\