We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Relation.Nullary.Negation.Core
1 parent 3880dec commit 6d018a3Copy full SHA for 6d018a3
CHANGELOG.md
@@ -287,3 +287,8 @@ Additions to existing modules
287
⊤-dec : Dec {a} ⊤
288
⊥-dec : Dec {a} ⊥
289
```
290
+
291
+* In `Relation.Nullary.Negation.Core`:
292
+ ```agda
293
+ contra-diagonal : (A → ¬ A) → ¬ A
294
+ ```
src/Relation/Nullary/Negation/Core.agda
@@ -60,6 +60,11 @@ contradiction₂ (inj₂ b) ¬a ¬b = contradiction b ¬b
60
contraposition : (A → B) → ¬ B → ¬ A
61
contraposition f ¬b a = contradiction (f a) ¬b
62
63
+-- Self-contradictory propositions are false by 'diagonalisation'
64
65
+contra-diagonal : (A → ¬ A) → ¬ A
66
+contra-diagonal self a = self a a
67
68
-- Everything is stable in the double-negation monad.
69
stable : ¬ ¬ Stable A
70
stable ¬[¬¬a→a] = ¬[¬¬a→a] (contradiction (¬[¬¬a→a] ∘ const))
0 commit comments