MiniAgda
Safe HaskellNone
LanguageHaskell98

Polarity

Synopsis

Documentation

class Polarity pol where Source #

Methods

erased :: pol -> Bool Source #

compose :: pol -> pol -> pol Source #

neutral Source #

Arguments

:: pol

neutral for compose.

promote :: pol -> pol Source #

demote :: pol -> pol Source #

hidden Source #

Arguments

:: pol

corresponding to hidden quantification

data Pol Source #

Constructors

Const 
SPos 
Pos 
Neg 
Param 
Rec 
Default 
PVar PVarId 

Instances

Instances details
LensPol Dec Source # 
Instance details

Defined in Abstract

Methods

getPol :: Dec -> Pol Source #

setPol :: Pol -> Dec -> Dec Source #

mapPol :: (Pol -> Pol) -> Dec -> Dec Source #

Switchable Pol Source # 
Instance details

Defined in Eval

Methods

switch :: Pol -> Pol Source #

Polarity Pol Source # 
Instance details

Defined in Polarity

SemiRing Pol Source # 
Instance details

Defined in Polarity

Show Pol Source # 
Instance details

Defined in Polarity

Methods

showsPrec :: Int -> Pol -> ShowS #

show :: Pol -> String #

showList :: [Pol] -> ShowS #

Eq Pol Source # 
Instance details

Defined in Polarity

Methods

(==) :: Pol -> Pol -> Bool #

(/=) :: Pol -> Pol -> Bool #

Ord Pol Source # 
Instance details

Defined in Polarity

Methods

compare :: Pol -> Pol -> Ordering #

(<) :: Pol -> Pol -> Bool #

(<=) :: Pol -> Pol -> Bool #

(>) :: Pol -> Pol -> Bool #

(>=) :: Pol -> Pol -> Bool #

max :: Pol -> Pol -> Pol #

min :: Pol -> Pol -> Pol #

showPVar :: Show a => a -> String Source #

relPol :: Pol -> (a -> a -> Bool) -> a -> a -> Bool Source #

relPolM :: Monad m => Pol -> (a -> a -> m ()) -> a -> a -> m () Source #

data PProd Source #

Constructors

PProd 

Fields

Instances

Instances details
Polarity PProd Source # 
Instance details

Defined in Polarity

Show PProd Source # 
Instance details

Defined in Polarity

Methods

showsPrec :: Int -> PProd -> ShowS #

show :: PProd -> String #

showList :: [PProd] -> ShowS #

Eq PProd Source # 
Instance details

Defined in Polarity

Methods

(==) :: PProd -> PProd -> Bool #

(/=) :: PProd -> PProd -> Bool #

Ord PProd Source # 
Instance details

Defined in Polarity

Methods

compare :: PProd -> PProd -> Ordering #

(<) :: PProd -> PProd -> Bool #

(<=) :: PProd -> PProd -> Bool #

(>) :: PProd -> PProd -> Bool #

(>=) :: PProd -> PProd -> Bool #

max :: PProd -> PProd -> PProd #

min :: PProd -> PProd -> PProd #

fromPProd :: PProd -> Maybe Pol Source #

fails if not a simple polarity

data PPoly Source #

Constructors

PPoly 

Fields

Instances

Instances details
SemiRing PPoly Source # 
Instance details

Defined in Polarity

Show PPoly Source # 
Instance details

Defined in Polarity

Methods

showsPrec :: Int -> PPoly -> ShowS #

show :: PPoly -> String #

showList :: [PPoly] -> ShowS #

Eq PPoly Source # 
Instance details

Defined in Polarity

Methods

(==) :: PPoly -> PPoly -> Bool #

(/=) :: PPoly -> PPoly -> Bool #

Ord PPoly Source # 
Instance details

Defined in Polarity

Methods

compare :: PPoly -> PPoly -> Ordering #

(<) :: PPoly -> PPoly -> Bool #

(<=) :: PPoly -> PPoly -> Bool #

(>) :: PPoly -> PPoly -> Bool #

(>=) :: PPoly -> PPoly -> Bool #

max :: PPoly -> PPoly -> PPoly #

min :: PPoly -> PPoly -> PPoly #