Intuitionistic negation.
Moduledec-0.0.6Haskell2010
Data.Type.Dec
Contents
Synopsis
- type Neg
- data Dec
- class Decidable
- value toNegNeg
- value tripleNeg
- value contradict
- value contraposition
- value decNeg
- value decShow
- value decToMaybe
- value decToBool
- value boringYes
- value absurdNo
- Packagedec-0.0.6
- Exports13
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceDec.hs
Types
Instances3Eq, Ord, Boring
Class of decidable types.
Law
a should be a Proposition, i.e. the Yes answers should be unique.
Note: We'd want to have decidable equality :~: here too,
but that seems to be a deep dive into singletons.
Neg combinators
We can negate anything twice.
Double-negation elimination is inverse of toNegNeg and generally impossible.
Triple negation can be reduced to a single one.
Weak contradiction.
A variant of contraposition.
Dec combinators
Flip Dec branches.