Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Refactor] imports to use Relation.Nullary.Irrelevant #2676

Merged
merged 7 commits into from
Mar 23, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ Non-backwards compatible changes
Minor improvements
------------------

* Moved the concept `Irrelevant` of irrelevance (h-proposition) from `Relation.Nullary`
to its own dedicated module `Relation.Nullary.Irrelevant`.

Deprecated modules
------------------

Expand Down
2 changes: 1 addition & 1 deletion src/Data/List/Fresh/Membership/Setoid/Properties.agda
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ open import Data.Sum.Base as Sum using (_⊎_; inj₁; inj₂; fromInj₂)
open import Function.Base using (id; _∘′_; _$_)
open import Relation.Binary.Core using (Rel)
open import Relation.Nullary.Negation.Core using (¬_)
open import Relation.Nullary using (Irrelevant)
open import Relation.Nullary.Irrelevant using (Irrelevant)
open import Relation.Unary as Unary using (Pred)
import Relation.Binary.Definitions as Binary using (_Respectsˡ_; Irrelevant)
import Relation.Binary.PropositionalEquality.Core as ≡
Expand Down
19 changes: 12 additions & 7 deletions src/Data/List/Relation/Binary/Pointwise.agda
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,24 @@ open import Data.List.Properties using (≡-dec; length-++)
open import Data.List.Relation.Unary.All as All using (All; []; _∷_)
open import Data.List.Relation.Unary.AllPairs using (AllPairs; []; _∷_)
open import Data.List.Relation.Unary.Any using (Any; here; there)
open import Data.Fin.Base using (Fin; toℕ; cast) renaming (zero to fzero; suc to fsuc)
open import Data.Fin.Base
using (Fin; toℕ; cast)
renaming (zero to fzero; suc to fsuc)
open import Data.Nat.Base using (ℕ; zero; suc)
open import Data.Nat.Properties
open import Level
open import Relation.Nullary hiding (Irrelevant)
import Relation.Nullary.Decidable as Dec using (map′)
open import Relation.Unary as U using (Pred)
open import Level using (Level; _⊔_)
open import Relation.Binary.Core renaming (Rel to Rel₂)
open import Relation.Binary.Definitions using (Reflexive; _Respects_; _Respects₂_)
open import Relation.Binary.Definitions
using (Reflexive; _Respects_; _Respects₂_)
open import Relation.Binary.Bundles using (Setoid; DecSetoid; Preorder; Poset)
open import Relation.Binary.Structures using (IsEquivalence; IsDecEquivalence; IsPartialOrder; IsPreorder)
open import Relation.Binary.Structures
using (IsEquivalence; IsDecEquivalence; IsPartialOrder; IsPreorder)
open import Relation.Binary.PropositionalEquality.Core as ≡ using (_≡_)
import Relation.Binary.PropositionalEquality.Properties as ≡
open import Relation.Nullary.Decidable as Dec
using (map′; yes; no; Dec; _because_)
open import Relation.Nullary.Negation.Core using (¬_; contradiction)
open import Relation.Unary as U using (Pred)

private
variable
Expand Down
4 changes: 2 additions & 2 deletions src/Data/List/Relation/Unary/All.agda
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ open import Effect.Applicative
open import Effect.Monad
open import Function.Base using (_∘_; _∘′_; id; const)
open import Level using (Level; _⊔_)
open import Relation.Nullary hiding (Irrelevant)
import Relation.Nullary.Decidable as Dec
open import Relation.Nullary.Decidable.Core as Dec
using (_×-dec_; yes; no; map′)
open import Relation.Unary hiding (_∈_)
import Relation.Unary.Properties as Unary
open import Relation.Binary.Bundles using (Setoid)
Expand Down
3 changes: 1 addition & 2 deletions src/Data/Maybe/Relation/Unary/Any.agda
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,7 @@ open import Level using (Level; _⊔_)
open import Relation.Binary.PropositionalEquality.Core using (_≡_; cong)
open import Relation.Unary
using (Pred; _⊆_; _∩_; Decidable; Irrelevant; Satisfiable)
open import Relation.Nullary hiding (Irrelevant)
import Relation.Nullary.Decidable as Dec using (Dec; yes; no; map)
open import Relation.Nullary.Decidable as Dec using (Dec; yes; no)

------------------------------------------------------------------------
-- Definition
Expand Down
6 changes: 3 additions & 3 deletions src/Data/Nat/Properties.agda
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,11 @@ open import Relation.Binary.Core
open import Relation.Binary
open import Relation.Binary.Consequences using (flip-Connex; wlog)
open import Relation.Binary.PropositionalEquality
open import Relation.Nullary hiding (Irrelevant)
open import Relation.Nullary.Decidable
using (True; via-injection; map′; recompute)
using (True; via-injection; map′; recompute; no; yes; Dec; _because_)
open import Relation.Nullary.Negation.Core using (¬_; contradiction)
open import Relation.Nullary.Reflects using (fromEquivalence)
open import Relation.Nullary.Reflects
using (fromEquivalence; Reflects; invert)

open import Algebra.Definitions {A = ℕ} _≡_
hiding (LeftCancellative; RightCancellative; Cancellative)
Expand Down
4 changes: 3 additions & 1 deletion src/Data/Unit/Properties.agda
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ module Data.Unit.Properties where
open import Data.Sum.Base using (inj₁)
open import Data.Unit.Base using (⊤)
open import Level using (0ℓ)
open import Relation.Nullary using (Irrelevant; yes)
open import Relation.Binary.Bundles
using (Setoid; DecSetoid; Poset; DecTotalOrder)
open import Relation.Binary.Structures
Expand All @@ -22,6 +21,9 @@ open import Relation.Binary.PropositionalEquality.Core
using (_≡_; refl; trans)
open import Relation.Binary.PropositionalEquality.Properties
using (setoid; decSetoid; isEquivalence)
open import Relation.Nullary.Decidable.Core using (yes)
open import Relation.Nullary.Irrelevant using (Irrelevant)


------------------------------------------------------------------------
-- Irrelevancy
Expand Down
2 changes: 1 addition & 1 deletion src/Data/Vec/Relation/Binary/Lex/NonStrict.agda
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ open import Relation.Binary.Definitions
using (Irreflexive; _Respects₂_; Antisymmetric; Asymmetric; Symmetric; Trans
; Decidable; Total; Trichotomous)
import Relation.Binary.Construct.NonStrictToStrict as Conv
open import Relation.Nullary hiding (Irrelevant)
open import Relation.Nullary.Decidable.Core using (yes; no)

private
variable
Expand Down
2 changes: 1 addition & 1 deletion src/Relation/Binary/Construct/Add/Infimum/NonStrict.agda
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ open import Relation.Binary.Structures
; IsDecTotalOrder)
open import Relation.Binary.Definitions
using (Minimum; Transitive; Total; Decidable; Irrelevant; Antisymmetric)
open import Relation.Nullary hiding (Irrelevant)
open import Relation.Nullary.Construct.Add.Infimum using (⊥₋; [_]; _₋; ≡-dec)
open import Relation.Nullary.Decidable.Core using (yes; no; map′)
import Relation.Nullary.Decidable.Core as Dec using (map′)

------------------------------------------------------------------------
Expand Down
3 changes: 1 addition & 2 deletions src/Relation/Binary/Construct/Add/Infimum/Strict.agda
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,9 @@ open import Relation.Binary.Structures
open import Relation.Binary.Definitions
using (Asymmetric; Transitive; Decidable; Irrelevant; Irreflexive; Trans
; Trichotomous; tri≈; tri<; tri>; _Respectsˡ_; _Respectsʳ_; _Respects₂_)
open import Relation.Nullary hiding (Irrelevant)
open import Relation.Nullary.Construct.Add.Infimum
using (⊥₋; [_]; _₋; ≡-dec; []-injective)
import Relation.Nullary.Decidable.Core as Dec using (map′)
open import Relation.Nullary.Decidable.Core as Dec using (yes; no; map′)

------------------------------------------------------------------------
-- Definition
Expand Down
5 changes: 3 additions & 2 deletions src/Relation/Binary/HeterogeneousEquality.agda
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ open import Data.Product.Base using (_,_)
open import Function.Base using (case_of_; _∋_; id)
open import Function.Bundles using (Inverse)
open import Level using (Level; _⊔_)
open import Relation.Nullary hiding (Irrelevant)
open import Relation.Unary using (Pred)
open import Relation.Binary.Core using (Rel; REL; _⇒_)
open import Relation.Binary.Bundles using (Setoid; DecSetoid; Preorder)
open import Relation.Binary.Structures using (IsEquivalence; IsPreorder)
Expand All @@ -26,6 +24,9 @@ open import Relation.Binary.Indexed.Heterogeneous.Construct.At
using (_atₛ_)
open import Relation.Binary.PropositionalEquality.Core as ≡ using (_≡_; refl)
open import Relation.Binary.Reasoning.Syntax
open import Relation.Nullary.Decidable.Core using (yes; no)
open import Relation.Nullary.Negation.Core using (¬_)
open import Relation.Unary using (Pred)

import Relation.Binary.PropositionalEquality.Properties as ≡
import Relation.Binary.HeterogeneousEquality.Core as Core
Expand Down
2 changes: 1 addition & 1 deletion src/Relation/Binary/PropositionalEquality.agda
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ open import Function.Base using (id; _∘_)
import Function.Dependent.Bundles as Dependent using (Func)
open import Function.Indexed.Relation.Binary.Equality using (≡-setoid)
open import Level using (Level; _⊔_)
open import Relation.Nullary using (Irrelevant)
open import Relation.Nullary.Irrelevant using (Irrelevant)
open import Relation.Nullary.Decidable using (yes; no; dec-yes-irr; dec-no)
open import Relation.Binary.Bundles using (Setoid)
open import Relation.Binary.Definitions using (DecidableEquality)
Expand Down
7 changes: 1 addition & 6 deletions src/Relation/Nullary.agda
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,7 @@ open import Relation.Nullary.Recomputable public using (Recomputable)
open import Relation.Nullary.Negation.Core public
open import Relation.Nullary.Reflects public hiding (recompute; recompute-constant)
open import Relation.Nullary.Decidable.Core public

------------------------------------------------------------------------
-- Irrelevant types

Irrelevant : Set p → Set p
Irrelevant P = ∀ (p₁ p₂ : P) → p₁ ≡ p₂
open import Relation.Nullary.Irrelevant public

------------------------------------------------------------------------
-- Weak decidability
Expand Down
2 changes: 1 addition & 1 deletion src/Relation/Nullary/Decidable.agda
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ open import Function.Bundles
using (Injection; module Injection; module Equivalence; _⇔_; _↔_; mk↔ₛ′)
open import Relation.Binary.Bundles using (Setoid; module Setoid)
open import Relation.Binary.Definitions using (Decidable)
open import Relation.Nullary using (Irrelevant)
open import Relation.Nullary.Irrelevant using (Irrelevant)
open import Relation.Nullary.Negation.Core using (¬_; contradiction)
open import Relation.Nullary.Reflects using (invert)
open import Relation.Binary.PropositionalEquality.Core
Expand Down
20 changes: 20 additions & 0 deletions src/Relation/Nullary/Irrelevant.agda
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
------------------------------------------------------------------------
-- The Agda standard library
--
-- A type `A` is irrelevant if all of its elements are equal.
-- This is also refered to as "A is an h-proposition".
------------------------------------------------------------------------

{-# OPTIONS --cubical-compatible --safe #-}

module Relation.Nullary.Irrelevant where

open import Agda.Builtin.Equality using (_≡_)
open import Level using (Level)

private
variable
p : Level

Irrelevant : Set p → Set p
Irrelevant P = ∀ (p₁ p₂ : P) → p₁ ≡ p₂