{-# OPTIONS --cubical-compatible --safe #-}
module Axiom.DoubleNegationElimination where
open import Axiom.ExcludedMiddle
open import Level
open import Relation.Nullary.Decidable.Core
using (decidable-stable; ¬¬-excluded-middle)
open import Relation.Nullary.Negation.Core using (Stable)
private
variable
ℓ : Level
DoubleNegationElimination : ∀ ℓ → Set (suc ℓ)
DoubleNegationElimination ℓ = {P : Set ℓ} → Stable P
em⇒dne : ExcludedMiddle ℓ → DoubleNegationElimination ℓ
em⇒dne em = decidable-stable em
dne⇒em : DoubleNegationElimination ℓ → ExcludedMiddle ℓ
dne⇒em dne = dne ¬¬-excluded-middle