Subterm occurrences for positivity checking.
The constructors are listed in increasing information they provide:
Mixed <= JustPos <= StrictPos <= GuardPos <= Unused
Mixed <= JustNeg <= Unused.
Instances16Bounded, Enum, Eq, Ord, Show, NFData, …
Bounded OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceEnum OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceEq OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceOrd OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceShow OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceNFData OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrencePretty OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrencePrettyTCM OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.PrettyNull OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceKillRange OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrencePrettyTCMWithNode OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.PrettySemiRing OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceOccurrence is a complete lattice with least element Mixed and greatest element Unused.
It forms a commutative semiring where oplus is meet (glb) and otimes is composition. Both operations are idempotent.
For oplus, Unused is neutral (zero) and Mixed is dominant. For otimes, StrictPos is neutral (one) and Unused is dominant.
StarSemiRing OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Positivity.OccurrenceEmbPrj OccurrenceDefined in Agda-2.7.0.1 · Agda.TypeChecking.Serialise.Instances.Internal · orphanAbstract [Occurrence]Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphanApply [Occurrence]Defined in Agda-2.7.0.1 · Agda.TypeChecking.Substitute · orphan