module Prelude.Logic where
open import Prelude.Level
open import Prelude.Equivalence
private variable
A B C : Set ℓ
I : Set ℓ
J : I → Set ℓ
X Y : (i : I) → J i → Set ℓ
infixr -10 _⇒₁_ _⇒_
Fam₁ : (ℓ : Level) (I : Set ℓ₁) → Set _
Fam₁ ℓ I = (i : I) → Set ℓ
Fam₂ : (ℓ : Level) (I : Set ℓ₁) (J : I → Set ℓ₂) → Set _
Fam₂ ℓ I J = (i : I) → J i → Set ℓ
_⇒₁_ : (X : Fam₁ ℓ₁ I) (Y : Fam₁ ℓ₂ I) → Set _
X ⇒₁ Y = ∀ {i} → X i → Y i
_⇒_ : (X : Fam₂ ℓ I J) (Y : Fam₂ ℓ′ I J) → Set _
X ⇒ Y = ∀ {i j} → X i j → Y i j