module Stdlib where
open import Data.Product
open import Data.List.Base
private
variable
A B : Set
const : Set → (A → Set)
const P x = P
_∙×_ : (P Q : A → Set) → (A → Set)
(P ∙× Q) x = P x × Q x
_⇒_ : (P Q : A → Set) → (A → Set)
(P ⇒ Q) x = P x → Q x
∀[_] : (A → Set) → Set
∀[_] P = ∀ {x} → P x
_⊢_ : (A → B) → (B → Set) → (A → Set)
(f ⊢ P) x = P (f x)
data ⊥ : Set where
data Dec (P : Set) : Set where
yes : P → Dec P
no : (P → ⊥) → Dec P
variable
a : A
as : List A
data All (P : A → Set) : List A → Set where
[] : All P []
_∷_ : P a → All P as → All P (a ∷ as)